TechWatchAlert
Données sécurité · CWE

CWE : les faiblesses derrière les CVE, expliquées

La CWE (Common Weakness Enumeration, « énumération des faiblesses communes ») est la nomenclature des types de défauts logiciels. Une CVE désigne une faille précise dans un produit précis ; sa CWE désigne la catégorie d'erreur qui l'a rendue possible.

900+faiblesses répertoriées
Top 25publié chaque année
CWE-79en tête en 2024

· 6 min de lecture.

CWE et CVE : la différence en un exemple

Prenez CVE-2021-44228, Log4Shell. Sa CWE est CWE-917 : injection dans une expression d'évaluation. Les deux niveaux appellent deux corrections différentes.

Corriger la CVE, c'est monter Log4j en version 2.17. C'est urgent, c'est fini en une soirée, et cela ne vous protège que de cette faille-là.

Corriger la CWE, c'est interdire à toute donnée entrante d'atteindre un évaluateur d'expressions. C'est long, cela demande une revue de conception — et cela vous protège aussi des trois prochaines failles de la même famille, y compris celles qui n'ont pas encore de numéro.

Une seule CWE couvre des milliers de CVE. C'est pour cette raison qu'un rapport de sécurité qui ne parle que de CVE décrit un présent, jamais une tendance.

Les faiblesses que vous croiserez le plus

Une poignée de CWE concentre une part énorme des CVE publiées. Pour chacune, un exemple célèbre permet de fixer l'idée :

CWEFaiblesseCe que l'attaquant obtientCas connu
CWE-79Cross-site scripting (XSS)Exécuter du code dans le navigateur d'un autre utilisateurInnombrables failles de CMS et d'extensions
CWE-89Injection SQLLire ou modifier la base de donnéesCVE-2023-34362 (MOVEit)
CWE-787Écriture hors limitesCorrompre la mémoire, souvent jusqu'à l'exécution de codeFailles de navigateurs et de piles réseau
CWE-22Traversée de répertoireLire des fichiers hors du dossier prévuFailles d'équipements de bordure et de VPN
CWE-352Falsification de requête (CSRF)Faire agir un utilisateur connecté à son insuInterfaces d'administration mal protégées
CWE-862Autorisation manquanteAtteindre une fonction sans y avoir droitFailles d'API très répandues
CWE-416Utilisation après libérationDétourner l'exécution du programmeFailles de moteurs de rendu
CWE-78Injection de commande systèmeExécuter des commandes sur le serveurFailles d'appliances et de routeurs
CWE-917Injection d'expressionExécuter du code via une chaîne interprétéeCVE-2021-44228 (Log4Shell)

La liste complète compte plus de 900 entrées, organisées en hiérarchie : des piliers très généraux jusqu'à des variantes très précises. Elle est consultable sur cwe.mitre.org ; nous n'en dupliquons pas les 900 lignes ici, elles ne vous apprendraient rien de plus que le catalogue officiel.

Le CWE Top 25 : à quoi il sert vraiment

Le MITRE publie chaque année le CWE Top 25 des faiblesses les plus dangereuses, classées en croisant la fréquence des CVE associées et leur gravité. Dans l'édition 2024, CWE-79 (XSS) est repassée en tête, devant CWE-787 (écriture hors limites) et CWE-89 (injection SQL).

Ce classement ne sert pas à décider quoi corriger cette semaine : il sert à décider sur quoi former une équipe et sur quoi régler ses outils d'analyse statique. C'est un outil de prévention, pas de tri d'alertes — la confusion est fréquente et fait perdre du temps aux deux bouts.

La chaîne CAPEC, CWE, CVE

Trois nomenclatures, trois questions : un schéma d'attaque (CAPEC) décrit comment on s'y prend, une faiblesse (CWE) décrit le défaut exploité, une vulnérabilité (CVE) décrit où ce défaut se trouve concrètement.

Déroulée sur Log4Shell : injection de code (CAPEC-242) → injection d'expression (CWE-917) → Log4j 2.0 à 2.14.1 (CVE-2021-44228). Lire dans ce sens permet d'anticiper ; lire dans l'autre permet de réagir.

Et concrètement, pour vous

Trois usages qui tiennent dans une réunion d'équipe :

  1. Comptez vos CVE par CWE sur les douze derniers mois. Si CWE-862 revient huit fois, vous n'avez pas huit bugs : vous avez un problème de conception des contrôles d'accès.
  2. Réglez vos outils d'analyse sur les trois CWE les plus fréquentes de votre code plutôt que sur les 900 règles par défaut. Le taux de faux positifs s'effondre, l'équipe cesse d'ignorer les rapports.
  3. Mettez la CWE dans le ticket, pas seulement la CVE. Le développeur qui corrige comprend alors ce qu'il doit éviter de réécrire ailleurs.
Sources & références officiellesCatalogue CWE — cwe.mitre.org (MITRE) · CWE Top 25 — cwe.mitre.org/top25 · Fiche CVE-2021-44228 — nvd.nist.gov.

Questions fréquentes

Combien existe-t-il de CWE ?

Plus de 900, organisées en hiérarchie (piliers, classes, bases, variantes). Une centaine seulement revient régulièrement dans les CVE publiées : c'est sur celles-là qu'il faut concentrer l'effort.

CWE ou CVE pour piloter la sécurité applicative ?

La CWE pour la prévention, parce qu'elle décrit une classe de défauts que vous pouvez éliminer à la conception. La CVE pour la réaction, parce qu'elle désigne une faille précise à corriger dans un produit précis. Les deux, jamais l'une à la place de l'autre.

Une CVE peut-elle avoir plusieurs CWE ?

Oui, et c'est fréquent. Une chaîne d'exploitation combine souvent une faiblesse d'autorisation et une injection. Les fiches listent alors plusieurs CWE ; la première citée est en général la cause la plus directe.

Ces données, filtrées pour vous

Toute cette base, réduite à ce qui touche votre parc

19 sources rapprochées de vos machines, dépôts et conteneurs : vous ne voyez que ce qui vous concerne.

Parler à l'équipe

Offre Free sans carte bancaire · hébergé en France

Continuer la lecture

Créer un compte gratuit