Améliorez l’évaluation des risques grâce aux scores EPSS dans Snyk
22 mai 2023
0 minutes de lectureLe nombre et la complexité des vulnérabilités logicielles ne cessent d’augmenter. La capacité des équipes de développement et de sécurité à évaluer le niveau de menace que représente une vulnérabilité et à prioriser les corrections en conséquence dépend largement de leur accès au maximum de contexte possible à son sujet.
Snyk s’est toujours donné pour priorité de fournir à ses utilisateurs les informations de sécurité nécessaires non seulement pour identifier les vulnérabilités potentielles de leurs applications, mais aussi pour les prioriser et les corriger en disposant du contexte le plus complet possible. C’est pourquoi nous sommes heureux d’annoncer l’ajout d’EPSS (Exploit Prediction Scoring System) aux informations de sécurité de Snyk pour les vulnérabilités Snyk Open Source et Snyk Container.
Les informations du dernier modèle EPSS (EPSS v3) sont disponibles dès aujourd’hui dans la Snyk Vulnerability Database. Elles seront progressivement ajoutées à d’autres workflows Snyk, comme l’interface de l’application Snyk, l’API et les rapports, au cours de l’année.
Qu’est-ce qu’EPSS ?
Le groupe EPSS SIG (groupe d’intérêt spécial), soutenu par FIRST, a été officiellement créé en 2020 avec pour objectif d’« aider les défenseurs des réseaux à mieux prioriser les efforts de correction des vulnérabilités ». Le problème identifié par le groupe de chercheurs et de professionnels bénévoles qui gère le projet est que les normes du secteur existantes, comme CVSS, peuvent être utiles pour mesurer la gravité d’une vulnérabilité, mais qu’elles ne permettent pas d’évaluer suffisamment la menace réelle qu’elle représente.
À quoi sert le score EPSS ?
EPSS estime la probabilité qu’une vulnérabilité soit exploitée et lui attribue un score compris entre 0 % et 100 %. Plus le score est élevé, plus il est probable que la vulnérabilité soit exploitée dans la nature au cours des 30 prochains jours. EPSS remet également ce score en contexte en lui associant un percentile, qui correspond à la proportion de vulnérabilités ayant obtenu un score inférieur ou égal. Ce percentile indique ainsi le niveau de menace que représente la vulnérabilité.
Les scores et les percentiles EPSS sont calculés quotidiennement pour tous les CVE publiés. Actuellement, les scores peuvent être téléchargés au format CSV via une requête HTTP directe depuis la page données et statistiques d’EPSS. Une API permet également d’exploiter ces données.
Quelle est la différence entre EPSS et CVSS ?
Le Common Vulnerability Scoring System (CVSS) est un cadre conçu pour caractériser une vulnérabilité et lui attribuer un score numérique reflétant sa gravité (faible, moyenne, élevée ou critique).
Les deux cadres visent à aider les organisations à relever le même défi : la priorisation. Ce sont également des cadres ouverts, dont les données sont accessibles au public et utilisables gratuitement. La principale différence entre les deux réside dans leur approche. Il est important de la comprendre pour déterminer s’ils sont mutuellement exclusifs.
CVSS cherche à fournir une mesure normalisée de la gravité d’une vulnérabilité à partir de trois groupes de métriques : de base, temporelles et environnementales. Ces métriques sont censées être calculées ensemble, de manière séquentielle, pour produire un score de 1 à 10 qui détermine le niveau de gravité attribué à une vulnérabilité. En réalité, cependant, en raison de la complexité que suppose l’ajout des métriques temporelles et environnementales au modèle, la plupart des organisations se contentent du score de base. Or, comme le souligne la documentation CVSS, celui-ci ne suffit pas à évaluer le risque réel :
Le score de base CVSS doit être complété par une analyse contextuelle de l’environnement et par des attributs susceptibles d’évoluer dans le temps, en utilisant les métriques temporelles et environnementales CVSS. Pour évaluer les risques de manière exhaustive, il convient plutôt d’employer un système qui prend en compte davantage de facteurs que le seul score de base CVSS. Ces systèmes tiennent généralement compte de facteurs hors du champ de CVSS, comme l’exposition et les menaces.
C’est la principale raison pour laquelle de nombreux analystes et professionnels de la sécurité relativisent les scores CVSS : ils savent qu’il faut les combiner à des informations et à un contexte supplémentaires pour mieux comprendre le niveau de risque posé par une vulnérabilité et prioriser les efforts de correction.
Comme indiqué plus haut, EPSS a été conçu pour remédier à cette limite du cadre CVSS. Il repose sur un modèle d’apprentissage automatique fondé sur les données, qui combine les informations actuelles sur les menaces provenant de la base de données CVE et des données d’exploitation réelles issues de plusieurs sources afin de prédire la probabilité qu’une menace se concrétise.
CVSS | EPSS | |
Responsable | FIRST | FIRST |
Plage de scores | 0-10 | 0 %-100 % |
Signification du score | Gravité d’une vulnérabilité | Probabilité qu’une vulnérabilité soit exploitée au cours des 30 prochains jours |
Sources de données | Métriques de base, temporelles et environnementales prises en compte dans le calcul du score | Diverses sources utilisées pour entraîner un modèle reposant sur l’apprentissage automatique, notamment des données historiques sur les vulnérabilités et des données quotidiennes sur les exploitations |
Mises à jour | Dernière version : CVSS 3.1 (publiée en juin 2019) | Les scores sont mis à jour quotidiennement par un processus reposant sur l’apprentissage automatique. Le modèle lui-même est mis à jour périodiquement. |
Comment fonctionne EPSS ?
EPSS utilise un modèle d’apprentissage automatique pour produire le score. Pour entraîner ce modèle, EPSS recueille des données provenant de plusieurs sources. Il s’agit notamment de données sur les vulnérabilités connues, les exploits associés et d’autres facteurs susceptibles d’influer sur leur exploitabilité. Parmi les sources de données figurent la liste MITRE CVE, la NVD (National Vulnerability Database) et divers flux de veille sur les menaces, comme Metasploit et ExploitDB.
Ces données sont ensuite combinées pour entraîner le modèle de prédiction EPSS et lui permettre de prédire avec fiabilité la probabilité d’exploitation de nouvelles vulnérabilités encore inconnues. À mesure que de nouvelles données sur les vulnérabilités et les exploits deviennent disponibles, le modèle est mis à jour pour garantir sa précision et sa pertinence.
La première version du modèle a été publiée en 2021, et la dernière mise à jour d’EPSS date de mars 2023 (EPSS v3 ou v2023.03.01). Le dernier modèle offre des résultats de prédiction nettement améliorés et une meilleure efficacité.

Utiliser EPSS avec Snyk
Comme indiqué plus haut, les scores EPSS ont été ajoutés aux vulnérabilités open source répertoriées dans la base de données des vulnérabilités Snyk Intel. Lorsque vous consultez un CVE spécifique, le score EPSS s’affiche dans le volet Threat Intelligence, à droite de la page :

Comme le montre l’exemple ci-dessus, Snyk affiche la mesure principale d’EPSS, la probabilité (0,04 % dans ce cas), ainsi que le percentile (6e percentile), qui indique cette probabilité par rapport à l’ensemble des autres scores.
Si vous développez une application basée sur Snyk CLI, vous pouvez également consulter les scores EPSS en affichant les vulnérabilités au format JSON.
Vers une évaluation des risques plus globale
EPSS estime la probabilité qu’une vulnérabilité soit exploitée. Mais au-delà de comprendre ce qu’est EPSS, il est également important de savoir ce qu’EPSS n’est pas.
EPSS ne tient pas compte des facteurs environnementaux supplémentaires et n’estime pas l’impact qu’aurait une vulnérabilité si elle était exploitée. Par conséquent, comme l’indique le groupe EPSS SIG lui-même, EPSS « ne constitue pas, et ne doit pas être considéré comme, une vision complète du risque ». Il convient également de noter que, malgré le travail remarquable du groupe EPSS SIG pour documenter le projet, le modèle lui-même n’est pas entièrement transparent, ce qui limite les possibilités d’évaluation approfondie. EPSS peut néanmoins, et doit, faire partie des facteurs de risque pris en compte pour évaluer le risque posé par une vulnérabilité et établir les priorités. C’est pourquoi nous avons décidé de l’ajouter progressivement à nos données sur les vulnérabilités.
Snyk travaille actuellement à la création d’un nouveau modèle d’évaluation des risques, beaucoup plus élaboré et complet. Il prendra en compte CVSS et EPSS, mais aussi une longue liste de facteurs de risque contextuels supplémentaires. Ensemble, ces facteurs permettront d’évaluer la probabilité qu’une vulnérabilité soit exploitée et l’impact d’une éventuelle exploitation, pour adopter une approche plus globale et fondée sur les risques en matière de priorisation et de gestion des problèmes.
Restez à l’écoute, nous vous en dirons bientôt plus !
Apprécié par les développeurs. Les équipes de sécurité lui font confiance.
Les outils Snyk, conçus pour les développeurs, offrent une sécurité intégrée et automatisée qui répond à vos exigences de gouvernance et de conformité.
