Une CVE, qu'est-ce que c'est ?
DATTAK
Jeudi 23 Janvier 2025


Kévin Gouasbault
Ingénieur Cybersécurité Senior
Les origines des CVEs
Le système CVE ou Common Vulnerabilities and Exposures a été lancé en 1999 par MITRE Corporation, une organisation à but non lucratif qui gère plusieurs programmes de cybersécurité pour le compte du gouvernement américain. L'objectif principal du projet CVE était de créer un référentiel standardisé permettant de suivre et de documenter les vulnérabilités de manière cohérente à l'échelle mondiale.
Avant la création du CVE, il n’existait pas de moyen universel de nommer et de suivre les vulnérabilités. Différents fournisseurs de sécurité utilisaient leurs propres nomenclatures, rendant la communication et la coordination difficiles. MITRE a donc proposé un système :
- Unique : Chaque CVE attribue un identifiant spécifique à une vulnérabilité, évitant les ambiguïtés.
- Public : Les CVE sont accessibles à tous, encourageant une transparence et une collaboration accrue.
- Neutre : Les informations ne favorisent aucun fournisseur ou éditeur.
Comment fonctionne le système CVE ?
Le processus de création d'une CVE :
- Identification de la vulnérabilité : Un chercheur en sécurité ou un fournisseur découvre une faille dans un logiciel ou un système.
- Soumission à un CNA (CVE Numbering Authority) : Les CNAs sont des entités autorisées à attribuer des identifiants CVE. Il peut s'agir d'éditeurs de logiciels, de chercheurs, ou encore de groupes comme Microsoft ou Google. Il en existe plusieurs centaines.
- Évaluation et attribution : Une fois validée, la vulnérabilité reçoit un identifiant CVE.
- Publication dans la base de données CVE : L’identifiant est ajouté à la base publique, accessible via des plateformes comme la National Vulnerability Database (NVD).
Comprendre une CVE
Chaque vulnérabilité documentée reçoit un identifiant unique au format : CVE-Année-Numéro
Par exemple : CVE-2023-12345
- 2023 : L’année où la vulnérabilité a été découverte ou enregistrée.
- 12345 : Un numéro séquentiel unique pour cette vulnérabilité.
CVSS : Évaluer la gravité des vulnérabilités
Le Common Vulnerability Scoring System (CVSS) est un standard qui accompagne souvent les CVE. Il fournit une notation numérique de 0 à 10 pour indiquer la gravité d’une vulnérabilité, permettant aux entreprises de prioriser leur gestion des risques.
Pour arriver à ce score, il y’a trois métriques principales qui sont utilisés:
Un CVSS est divisé en plusieurs composantes pour donner une évaluation complète de la vulnérabilité :
Base Score : Le base score évalue les caractéristiques intrinsèques d'une vulnérabilité (sa nature fondamentale). Il comprend des sous-métriques comme :
- Vector d'attaque (Attack Vector, AV) : Décrit la facilité d’exploitation. Exemple :
- Réseau (Network) : Exploitable à distance via Internet.
- Local : Exploitable uniquement avec un accès direct à la machine.
- Complexité de l'attaque (Attack Complexity, AC) : Indique si l'exploitation nécessite des conditions particulières (faible ou élevée).
- Privilèges requis (Privilèges Required, PR) : Niveau d'accès nécessaire pour exploiter la vulnérabilité.
- Vector d'attaque (Attack Vector, AV) : Décrit la facilité d’exploitation. Exemple :
Temporal Score : Prend en compte des facteurs changeants comme la disponibilité d’un correctif ou des exploits connus.Il comprend des sous sous-métriques comme :
- Maturité de l’exploit (Exploit Code Maturity, E) : Y a-t-il des outils ou scripts publics exploitant cette faille ?
- Remédiation disponible (Remediation Level, RL) : Existe-t-il un correctif ou une solution de contournement ?
Environmental Score : Permet d’adapter le score à un environnement spécifique (entreprise ou organisation). Exemples : Importance des actifs affectés, impact sur la confidentialité, intégrité, disponibilité.
Interprétation des scores CVSS
- 0.0 - 3.9 : Faible (Low) : Risque mineur, correction moins urgente.
- 4.0 - 6.9 : Moyen (Medium) : Risque modéré, nécessite une attention rapide.
- 7.0 - 8.9 : Élevé (High) : Risque sérieux, priorité élevée.
- 9.0 - 10.0 : Critique (Critical) : Vulnérabilité majeure, doit être corrigée immédiatement.
Comment savoir si son système est vulnérable ?
CPE : Identifier les systèmes vulnérables
Le Common Platform Enumeration (CPE) est un autre standard souvent associé aux CVE. Il fournit une méthode uniforme pour identifier les produits, logiciels et systèmes affectés par une vulnérabilité.
Structure d’un CPE
Un identifiant CPE suit une structure précise, comme une sorte d’adresse unique pour un logiciel ou un matériel spécifique :
cpe:2.3:o:vendor:product:version:update:edition:language
Chaque section décrit un aspect particulier du système :
- Vendor : Le fournisseur (ex. Microsoft).
- Product : Le produit ou logiciel concerné (ex. Windows).
- Version : La version vulnérable (ex. 10.0.19044).
- Update, Edition, Language : Détails supplémentaires si nécessaire.
Exemple pratique : Pour une vulnérabilité dans Apache HTTP Server version 2.4.56, le CPE associé pourrait ressembler à :
cpe:2.3:a:apache:http_server:2.4.56:*:*:*:*:*:*:*
L’utilité des CPEs
- Précision dans l’identification : Permet de savoir si un système spécifique est vulnérable.
- Automatisation des audits de sécurité : Les outils de scan comme Nmap, Nessus ou OpenVAS utilisent les CPE pour vérifier automatiquement si une infrastructure est exposée à des CVE spécifiques.
Cas pratique : CVE-2019-0708 (BlueKeep)
La CVE-2019-0708, surnommée BlueKeep, est une vulnérabilité de sécurité détectée dans le Remote Desktop Protocol (RDP) de Microsoft Windows. Elle est extrêmement dangereuse en raison de sa capacité à se propager de manière autonome, semblable à des attaques de type ver informatique.
- Date de découverte : Mai 2019
- Score CVSS de base : 9.8 (Critique)
- Description : Cette vulnérabilité permet une exécution de code à distance (RCE) sans authentification préalable, ce qui la rend exploitable par des attaquants distants pour prendre le contrôle total d'un système affecté.
Analyse du CVSS de CVE-2019-0708
Le vector d’attaque est identifié ainsi:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Ce qui correspond à:
Cas pratique : Gestion de CVE-2019-0708 dans une entreprise
Étape 1 : Identification des systèmes vulnérablesL’équipe IT effectue un audit des systèmes pour repérer les versions de Windows vulnérables. Des outils comme Nmap, OpenVAS ou Nessus permettent d’identifier les hôtes avec RDP activé et non corrigé. Les CPE correspondants incluent :
cpe:2.3:o:microsoft:windows_7:*:*:*:*:*:*:*:*
cpe:2.3:o:microsoft:windows_xp:*:*:*:*:*:*:*:*
Étape 2 : Priorisation avec l’Environmental ScoreDans l’environnement spécifique de l’entreprise :
- Confidentialité : Moyen Les systèmes concernés stockent des données internes modérément sensibles.
- Intégrité : None L’ensemble des données est backup de façon pérenne.
- Disponibilité : Haut Une indisponibilité de RDP affecterait la continuité des opérations à distance pour plusieurs équipes.
Après environmental score ajusté : 7.8 (élevé)
Étape 3 : Mise en œuvre de solutions- Correctif de sécurité
- Microsoft a publié des mises à jour pour les systèmes affectés, même pour des versions obsolètes comme Windows XP. Ces correctifs doivent être appliqués immédiatement.
- Mesures de contournement
- Désactivation de RDP sur les systèmes non essentiels.
- Mise en place de règles de pare-feu pour limiter les connexions RDP uniquement aux adresses IP de confiance.
- Activation de l’authentification NLA (Network Level Authentication) pour ajouter une couche de sécurité.
- Surveillance et gestion des accès
- Surveillance continue des connexions RDP via des solutions SIEM.
- Mise en place de VPN pour sécuriser davantage les connexions à distance.
Si des signes d’exploitation de BlueKeep sont détectés (augmentation des tentatives de connexion RDP, comportements anormaux), l’entreprise doit :
- Isoler immédiatement les systèmes infectés.
- Analyser les journaux de logs des machines pour identifier l'origine de l’attaque.
- Restaurer les systèmes à partir de sauvegardes sûres.
Conclusion : Pourquoi les CVE sont importantes ?
Les CVE sont bien plus qu’une simple numérotation. Elles apportent plusieurs avantages clés :
- Faciliter la communication Avec une CVE, les équipes de sécurité, les fournisseurs, et les chercheurs peuvent parler de la même vulnérabilité sans confusion. Cela simplifie la coordination des correctifs et des mises à jour.
- Évaluer les risques rapidement Chaque CVE est accompagnée d’une description et, souvent, d’un score de gravité basé sur le CVSS (Common Vulnerability Scoring System). Cela aide les entreprises à prioriser les vulnérabilités critiques à corriger en premier.
- Standardiser les pratiques de sécurité Les entreprises utilisent les CVE comme référence pour évaluer leur niveau de sécurité et pour auditer leurs systèmes. Elles peuvent vérifier si elles sont affectées par des vulnérabilités connues en scannant leurs infrastructures.
N’attendez plus pour protéger vos clients
Le risque cyber est le risque numéro 1 pour une entreprise, quelle que soit sa taille.