131% de CVE signalées en plus par jour en 2026 par rapport à l'an dernier.
← Retour au glossaire

CPE

Common Platform Enumeration (CPE) est un schéma de nommage standard des produits informatiques, comme cpe:2.3:a:tukaani:xz:5.6.0, que la NVD utilise pour indiquer les produits touchés par une CVE.

Dernière mise à jour : 11 novembre 2026

Common Platform Enumeration (CPE) est un schéma de nommage structuré des produits informatiques en cybersécurité : applications, systèmes d'exploitation et matériel. La version 2.3 est spécifiée par le NIST dans NISTIR 7695 (août 2011). La National Vulnerability Database (NVD) utilise les noms CPE pour indiquer quels produits une CVE touche, et tient le dictionnaire CPE officiel.

Le format CPE 2.3

Un nom CPE 2.3 compte 11 attributs après le préfixe cpe:2.3 : part, vendor, product, version, update, edition, language, sw_edition, target_sw, target_hw et other. La partie (part) vaut a pour une application, o pour un système d'exploitation et h pour du matériel. Un * signifie n'importe quelle valeur et un - signifie sans objet.

cpe:2.3:a:microsoft:internet_explorer:8.0.6001:beta:*:*:*:*:*:*
cpe:2.3:a:lodash:lodash:4.17.20:*:*:*:*:node.js:*:*
cpe:2.3:h:raspberrypi:raspberry_pi_4_model_b:-:*:*:*:*:*:*:*

Le premier est l'exemple de la spécification. Le deuxième est la bibliothèque npm lodash, avec node.js comme logiciel cible. Le troisième est un matériel. Les trois figurent dans le dictionnaire de la NVD.

Comment fonctionne la correspondance CPE, et où elle échoue

Une fiche de la NVD liste les CPE auxquels une CVE s'applique, souvent avec des plages de versions. Un scanner transforme chaque composant d'une SBOM en hypothèse de CPE et compare. Trois choses tournent mal :

  • Noms ambigus. Le fournisseur et le produit du dictionnaire ne correspondent pas toujours au nom du paquet dans son écosystème. La bibliothèque xz est cpe:2.3:a:tukaani:xz, alors que Debian la livre sous le nom de paquet xz-utils. Une hypothèse construite à partir du nom du paquet tombe sur le mauvais produit ou sur aucun.
  • Plages trop larges. Une déclaration d'applicabilité peut couvrir des versions ou des plateformes non concernées, par exemple toutes les versions d'un produit alors qu'une seule configuration de build l'était. Chaque composant correspondant devient un résultat à trier.
  • Données manquantes. Le NIST écrit qu'« à partir du début de 2024, la NVD a accumulé un important retard de CVE non enrichies ». Depuis le 15 avril 2026, elle enrichit les CVE par priorité (d'abord les entrées du KEV de la CISA, les logiciels utilisés par l'administration fédérale et les logiciels critiques au sens de l'EO 14028) et marque les autres « Lowest Priority - not scheduled for immediate enrichment » (NIST). Les CVE Numbering Authorities peuvent fournir les produits concernés, CPE compris, dans la fiche CVE, et la NVD intègre ces données fournies par les CNA et les ADP depuis juin 2026, mais la couverture varie selon la CNA. Les notes de version 5.2 du Yocto Project résument l'effet sans détour : avec des vérifications fondées sur les CPE, « certaines vulnérabilités ne sont tout simplement pas signalées ».

Apparier le mauvais produit est une source de faux positifs ; voir réduire le bruit des vulnérabilités.

CPE et Package URL

Package URLCPE
Qui définit le nomL'écosystème du paquetLe dictionnaire CPE de la NVD
IdentifieUn paquet dans un registre ou une distributionUn produit, y compris le matériel et les systèmes d'exploitation
Formatpkg:type/namespace/name@versioncpe:2.3:part:vendor:product:version:...
NormeECMA-427NISTIR 7695 (CPE 2.3)
Utilisé parOSV, avis GitHub, outils SBOMNVD, de nombreux scanners
Échec typiqueAbsente pour le code vendorisé ou listé à la mainNoms de fournisseur et de produit ambigus ; pas de données CPE pour beaucoup de CVE récentes

Utilisez une package URL partout où un écosystème de paquets existe, un CPE pour les produits commerciaux, les firmwares et le matériel, et les deux lorsqu'une exigence demande les deux. Les 2026 Minimum Elements de la CISA citent CPE et Package-URL comme identifiants courants, et la BSI TR-03183-2 exige de tels identifiants pour chaque composant lorsqu'ils existent.

Les CPE dans les SBOM

CycloneDX a un champ cpe sur chaque composant, et SPDX porte les CPE comme identifiants externes. Si vous êtes fournisseur, indiquez le CPE que la NVD utilise réellement pour votre produit (cherchez-le dans le dictionnaire) plutôt que d'en inventer un : un CPE inventé ne correspond à rien. Les identifiants sont une partie de la qualité des champs d'une SBOM ; savoir si quelque chose manque à la liste est une autre question, la complétude de la SBOM.

CRACI identifie chaque paquet qu'un build récupère par sa package URL. Voir SBOM au moment du build.