Vous êtes sur le site public du Cert-IST
Le système d'évaluation des vulnérabilités "CVSS" version 2.0

Date :26 Février 2008

Publication: Article

Avant propos

"CVSS" (Common Vulnerability Scoring System) est un système de notation qui permet d'associer une note (comprise entre 0 et 10) évaluant la dangerosité d'une vulnérabilité. Ce système de notation fournit un cadre commun pour évaluer les caractéristiques et les impacts des vulnérabilités de sécurité informatique.

CVSS version 1.0 a vu le jour en février 2005, et plusieurs articles du Cert-IST ont été consacrés à son fonctionnement. CVSS version 2.0 a été lancée officiellement en juin 2007 lors de la conférence du FIRST de Séville.

Depuis son lancement, CVSS est progressivement adopté par les éditeurs et constructeurs, les bases de vulnérabilités, les Certs et est devenu un standard incontournable depuis que la base de vulnérabilités NVD associe systématiquement un score CVSS à toutes les vulnérabilités CVE. L'initiative CVSS est hébergée par le FIRST.

Le Cert-IST évalue la dangerosité des vulnérabilités selon la métrique EISPP depuis 2003 et a mis en place fin 2007 des passerelles entre les métriques EISPP et CVSS permettant d'inclure dans sa base de vulnérabilités la notation CVSS.


1 - Les critères d'évaluation de CVSS

CVSS est découpé en trois groupes d'évaluation ("Base", "Temporal" et "Environnemental") ayant chacun une note numérique (appelée "score") comprise entre 0 (danger nul) et 10 (danger très élevé), ainsi qu'un vecteur représentant les critères utilisés pour calculer la note.

  • Le groupe "Base" évalue l'impact maximum théorique de la vulnérabilité. Une fois la vulnérabilité découverte, analysée et qualifiée (tout en présumant que l'information initiale est complète et correcte), certaines caractéristiques de la vulnérabilité restent constantes.
  • Le groupe "Temporel" (Temporal) pondère le groupe "Base" en prenant en compte  l'évolution de la vulnérabilité dans le temps pour l'atténuer ou la renforcer (par exemple, l'existence d'un programme d’exploitation ou d'un correctif).
  • Le groupe "Environnemental" (Environmental) pondère le groupe "Temporel" en prenant en compte les caractéristiques de la vulnérabilité pour un Système d'Information donné.

Chaque groupe possède des critères d'évaluation (appelés "Metrics") permettant de calculer la note numérique associée à la criticité de la vulnérabilité.


La note de base

Il existe deux types de critères relatifs au groupe "Base" :

  • Des critères relatifs à l'exploitabilité de la vulnérabilité :
  • Vecteur d'Accès  ou "Access Vector" (AV) : spécifie si pour exploiter la vulnérabilité l'attaquant doit avoir un accès physique ou un compte (L – "Local"), doit avoir accès à un réseau local (A – "Adjacent Network") ou si la vulnérabilité est exploitable depuis un réseau externe (N – "Network")
  • Complexité d'Accès  ou "Access Complexity" (AC) : spécifie la complexité de l'exploitation de la vulnérabilité. Il peut être élevé (H - "High"), moyen (M - "Medium") ou faible (L - "Low"). Il s'agit de la complexité intrinsèque, l'existence de programme d'exploitation ne rentre pas en compte dans l'évaluation de ce critère.
  • Authentification ou "Authentication" (Au) : spécifie si pour exploiter la vulnérabilité l'attaquant n'a pas besoin de s'authentifier (N – "None"), doit s'authentifier une fois (S – "Single") ou doit s'authentifier plusieurs fois (M – "Multiple").
  • Des critères relatifs à l'impact de la vulnérabilité :
  • Impact sur la confidentialité ou "Confidentiality Impact" (C) : spécifie l'impact sur la confidentialité des données. Il peut être complet (C – "Complete"), partiel (P – "Partial") ou inexistant (N – "None").
  • Impact sur l'intégrité ou "Integrity Impact" (I) : spécifie l'impact sur l'intégrité des données. Il peut être complet (C – "Complete"), partiel (P – "Partial") ou inexistant (N – "None").
  • Impact sur la disponibilité ou "Availability Impact" (A) : spécifie l'impact sur la disponibilité des données. Il peut être complet (C – "Complete"), partiel (P – "Partial") ou inexistant (N – "None").

 Nota : Le changement entre la version 1 et la version 2 de CVSS concerne les critères d'évaluation relatifs à l'impact de la vulnérabilité qui ont été simplifiés. La pondération de l'impact (paramètre "Impact Bias") a été supprimée.


Ces six critères ont des poids qui, appliqués à une formule de calcul, fournissent la note de "Base".

Le vecteur de "Base" est de la forme :

(AV:[L|A|N]/AC:[H|M|L]/Au:[N|S|M]/C:[C|P|N]/I:[C|P|N]/A:[C|P|N])


La note Temporelle

Il existe trois critères relatifs au groupe "Temporel" :

  • Facilité d’Exploitation ou "Exploitability" (E) : spécifie s'il y a un programme d'exploitation disponible pour cette vulnérabilité. Il peut être inexistant (U – "Unproven"), exister sous forme de "Proof-of-Concept" (POC), exister sous forme de code fonctionnel (F – "Functional"), exister et se propager via un code mobile de type malware (H – "High"), ou bien être indéfini (ND – "Not Defined").
  • Niveau de correction ou "Remediation Level" (RL) : spécifie l'existence de contournement ou de solution pour cette vulnérabilité. Il peut exister un correctif officiel (OF – "Official Fix"), exister un correctif temporaire (TF – "Temporary Fix"), exister un contournement (W – "Workaround"), n'exister aucune solution (U – "Unavailable"), ou bien être indéfini (ND – "Not Defined").
  • Niveau de confiance ou "Report Confidence" (RC) : spécifie si cette vulnérabilité est confirmée ou supposée. Elle peut être non confirmée (UC – "Unconfirmed"), présumée (UR – "Uncorroborated"), confirmée (C – "Confirmed"), ou bien être indéfini (ND – "Not Defined").

Ces trois critères ont des poids qui, appliqués à une formule de calcul et au score de "Base", fournissent le score "Temporal".

Le vecteur " Temporal " est de la forme :

( AV:[L|A|N]/AC:[H|M|L]/Au:[N|S|M]/C:[C|P|N]/I:[C|P|N]/A:[C|P|N]
  /E:[U|POC|F|H|ND]/RL:[OF|TF|W|U|ND]/RC:[UC|UR|C|ND] )


La note Environnementale

Il existe trois critères relatifs au groupe "Environnemental" :

  • Dommage collatéral potentiel ou " Collateral Damage Potential" (CDP) : spécifie s'il y a perte de revenu, de patrimoine, de productivité ou dommages physiques. Il peut être nul (N – "None"), faible (L – "Low"), moyennement faible (LM - Low-Medium), moyennement élevé (MH – "Medium-High"), élevé (H – "High"), ou bien  être indéfini (ND – "Not Defined").
  • Nombre de Cibles impactées ou "Target Distribution" (TD) : spécifie la proportion en pourcentage des systèmes vulnérables. Elle peut être nulle (N – "None"), faible (L – "Low"), moyenne (M – "Medium"), élevé (H – "High") ou bien être indéfini (ND – "Not Defined").
  • Exigences de sécurité ou "Security requirements" d'un point de vue confidentialité (CR), intégrité (IR) et disponibilité (AR) permettant d'affiner l'impact de la vulnérabilité sur le SI donné.  Chacune d'elles peut être faible (L – "Low"), moyenne (M – "Medium"), élevé (H – "High") ou bien être indéfini (ND – "Not Defined").

Ces trois critères ont des poids qui, appliqués à une formule de calcul et au score "Temporel", fournissent le score "Environnemental".

Le vecteur " Environnemental " est de la forme :

( AV:[L|A|N]/AC:[H|M|L]/Au:[N|S|M]/C:[C|P|N]/I:[C|P|N]/A:[C|P|N]
  /E:[U|POC|F|H|ND]/RL:[OF|TF|W|U|ND]/RC:[UC|UR|C|ND]
  /CDP:[N|L|LM|MH|H|ND/TD:[N|L|M|H|ND]/CR:[L|M|H|ND]/IR:[L|M|H|ND]/AR:[L|M|H|ND])


2 - La note CVSS dans les publications du Cert-IST

Le Cert-IST évalue le niveau de risque d'une vulnérabilité selon la métrique EISPP depuis 2003 et a commencé en 2005, à intégrer dans certaines de ses productions la notation CVSS (version 1.0). Depuis fin novembre 2007, chaque nouvel avis de sécurité du Cert-IST émis intègre la notation CVSS version 2.0.

Pour rappel, le projet européen EISPP dans lequel le Cert-IST a largement contribué,  avait en partie pour objectif de définir une métrique commune aux CERTs participants, afin de qualifier de manière efficace le niveau de risque d'une vulnérabilité.

Le Cert-IST a créé une section supplémentaire appelée "Note(s) CVSS" dans ses avis de sécurité. Cette section inclut pour une référence d'avis la note et le vecteur de "base" ainsi que la note et le vecteur "Temporel".

Ainsi pour l'avis CERT-IST/AV-2008.009 " Vulnérabilités dans le protocole Microsoft Windows TCP/IP (MS08-001)" version 2.1 du 04 février 2008, la section est la suivante :

Note(s) CVSS

Cert-IST - CERT-IST/AV-2008.009

base score : 7.9 - (AV:A/AC:M/Au:N/C:C/I:C/A:C)

temporal score : 6.5 - (AV:A/AC:M/Au:N/C:C/I:C/A:C/E:F/RL:OF/RC:C)

Nota : Le Cert-IST évalue uniquement la note de base et la note temporelle. La note environnementale ne peut être évaluée lors de l'émission de l'avis, car elle est liée à une organisation propre (un système d'information donné).


3 - Passerelles entre les métriques EISPP v1.2 et CVSS version 2.0

Le Cert-IST a mis en place des passerelles entre les métriques EISPP et CVSS permettant d'inclure dans sa base de vulnérabilités la notation CVSS.
Les critères permettant de calculer la note de base CVSS sont déduits des critères EISPP de la façon suivante :


Critères EISPP v1.2

Critères CVSS v2.0

Impact

 Prise de contrôle du système

 Integrity    : C(*)
 Availability    : C
 Confidentiality    : C

 Elévation de privilège

 Integrity    : P
 Availability    : P
 Confidentiality    : P

 Accès au système

 Integrity    : P
 Availability    : P
 Confidentiality    : P

 Déni de service

 Integrity    : N
 Availability    : C
 Confidentiality    : N

 Atteinte à la confidentialité de données

 Integrity    : N
 Availability    : N
 Confidentiality    : C

 Atteinte à l'intégrité des données

 Integrity    : C
 Availability    : N
 Confidentiality    : N

 Interruption de service

 Integrity    : N
 Availability    : P
 Confidentiality    : N

 Tremplin

 Integrity    : P
 Availability    : N
 Confidentiality    : N

 Camouflage

 Integrity    : P
 Availability    : N
 Confidentiality    : N

 Non évalué

 Pas de score CVSS

Niveau d'expertise

 Expert

 Access complexity: High

 Connaisseur

 Access complexity: Medium

 Débutant

 Access complexity: Low

Moyen nécessaire

 Accès physique

 Access Vector: Local
 Authentication: None

 Accès distant avec compte

 Access Vector: Local
 Authentication: Single

 Accès distant sans compte

 Access Vector: Network
 Authentication: None

 (*) Impact : complet (C – "Complete"), partiel (P – "Partial") ou inexistant (N – "None")

Nota : Les trois critères "temporels" sont évalués manuellement.


4 - Documentation

Guide CVSS version 2.0 :

Liens utiles CVSS : http://www.first.org/cvss/links.html

Calculatrices CVSS :

Métrique Cert-IST (EISPP v1.2) disponible sur le site du Cert-IST : http://www.cert-ist.com/fra/ressources/Avis/NomenclatureFR/

EISPP v1.2 common advisory  format : http://www.eispp.org/commonformat_1_2.pdf

Site NVD : http://nvd.nist.gov/

Articles Cert-IST :