Reconnaître et évaluer les vulnérabilités émergentes

Certains facteurs qui influencent la gravité des vulnérabilités sont souvent sous-estimés. De bonnes pratiques permettent d'évaluer la meilleure façon de les traiter en fonction de l'urgence.

En ce qui concerne les vulnérabilités, la principale tâche des équipes de sécurité est de les identifier et de les classer le plus tôt possible. 

Pour rester à jour, il est important de surveiller en permanence la base de données CVE (Common Vulnerabilities and Exposures), qui identifie et répertorie les vulnérabilités publiques, ainsi que la base de données nationale des vulnérabilités NVD (National Vulnerability Database) qui applique les scores de gravité CVSS (Common Vulnerability Scoring System). Il est aussi crucial de surveiller les composants que les entreprises utilisent dans leurs produits et services. Comprendre l'impact concret d'une vulnérabilité sur les systèmes et les utilisateurs est un enjeu stratégique pour les entreprises, et l'une des principales raisons pour lesquelles les scores CVSS ont été développés.

Afin d’anticiper les nouvelles vulnérabilités, les équipes doivent utiliser les données CVE et NVD en permanence, tout en étant conscientes de leurs limites. Elles constituent un outil indispensable, mais pas suffisant. Certains facteurs qui influencent la gravité des vulnérabilités sont souvent sous-estimés ou négligés. Ils comportent des critères environnementaux propres à des systèmes spécifiques. Également, les mesures temporelles telles que l'existence ou l’absence d'un code d’exploitation de la vulnérabilité sont tout aussi importantes. D'autres facteurs subjectifs ou difficiles à quantifier, comme l'attention du public ou la popularité de la vulnérabilité, peuvent être pertinents. 

Compte tenu de ces contraintes, des mesures supplémentaires sont nécessaires. Les bonnes pratiques divisées ci-dessous en quatre étapes permettent d‘enrichir en informations le contexte fourni par les systèmes afin d‘évaluer la meilleure façon de traiter les vulnérabilités et selon quelle urgence.

Étape 1 : examiner l'ampleur d’une vulnérabilité

Après l’identification d‘une nouvelle vulnérabilité, il est nécessaire d’évaluer son score de base et l’ampleur de sa surface d'attaque, c'est-à-dire son impact au sein des systèmes de l‘entreprise. Ce score est présent dans les listes de vulnérabilités du CVE, avec des résumés détaillés des composants affectés, de l'impact potentiel, etc. Il est également possible d’en calculer la valeur à l'aide du calculateur CVSS. Toutefois, tant que l'étendue de la surface d'attaque, l'impact potentiel et toutes les mesures de protection existantes n'ont pas été déterminés, cette valeur reste purement théorique. Dans de nombreux cas, il est également nécessaire d'analyser depuis combien de temps la vulnérabilité existe dans les systèmes logiciels et s'il y a déjà eu précédemment des tentatives d'attaques ou des attaques réussies sur une vulnérabilité spécifique. L'évaluation ciblée des logs d'application et des schémas d'accès peut fournir un aperçu rapide de la situation.

Étape 2 : évaluer la popularité et rechercher un code d’exploitation

Une fois le score de base déterminé et la surface d'attaque évaluée, l'étape suivante consiste à analyser le statut actuel de la vulnérabilité. Une analyse des réseaux sociaux et de GitHub montre l’étendue de la vulnérabilité. Elle permet également de découvrir les approches de remédiation existantes et de déterminer si un code d’exploitation est déjà en circulation.

Le CVSS ne prend en compte que de manière optionnelle l'existence d'un code d’exploitation de la vulnérabilité. Cela signifie que les scores CVSS de base ne reflètent pas nécessairement le danger immédiat et réel des exploitations : c’est le cas du score CVSS temporel, qui varie au cours du temps, puisqu’il arrive que la communauté de sécurité juge vulnérabilité inexploitable, mais qu’un jour un code d’exploitation voie le jour et change l’impact de la vulnérabilité. Le code de preuve de concept indique également qu'une vulnérabilité est susceptible de faire l'objet d'un événement RCE (Remote Code Execution), ce qui constitue un facteur important de gravité. L'ambiguïté quant à la prise en compte ou non de cet aspect par le CVSS peut jeter un doute sur le score et éclipser le risque réel.

Étape 3 : préciser la gravité de la vulnérabilité à l’aide de critères d’évaluation   

En évaluant la surface d'attaque, l'exploitabilité, le niveau d’importance métier des systèmes impactés ainsi que les contre-mesures existantes, il est possible de montrer le risque spécifique d'une vulnérabilité pour une entreprise et ses employés. Des solutions appropriées permettent d'automatiser et d'accélérer considérablement la collecte et la synthèse des données. Elles suggèrent des étapes ultérieures et documentent clairement l'ensemble du processus. Compte tenu des facteurs mentionnés, ces solutions fournissent également une base d’évaluation étendue. Par exemple, un score CVSS de base de 9,0 sera modifié en fonction des critères. Le score sera augmenté si un code d’exploitation est détecté, également si ce code  est public, mais le code pourra également être réduit si l’attaquant doit avoir des privilèges élevés pour exploiter la vulnérabilité.

Étape 4 : initier des contre-mesures

Après l‘évaluation d’une nouvelle vulnérabilité, un plan d'urgence doit clairement décrire les prochaines étapes. Si la vulnérabilité représente une menace concrète, les personnes responsables doivent la considérer comme un incident et mettre en place des contre-mesures. Pour accélérer cette phase du processus, il est possible d‘utiliser un score enrichi, dans lequel une vulnérabilité se voit attribuer une valeur seuil définie. Le dépassement de ce seuil déclenche une alarme. Le message associé contient toutes les informations sur la vulnérabilité à partir du CVE ainsi que les mesures nécessaires.

Le processus de clôture de la vulnérabilité diffère d'une entreprise à l'autre. Pour assurer une couverture 24/ 24, de nombreuses entreprises désignent plusieurs "gestionnaires d'incidents”. Un outil de gestion des incidents ainsi que des applications mobiles permettent une réponse coordonnée aux incidents grâce au triage, aux notifications centralisées, à la délégation des contre-mesures et au suivi des incidents. Enfin, il est judicieux de partager les résultats de l'ensemble du processus et d'informer les personnes concernées. Cela peut contribuer à éradiquer plus rapidement la vulnérabilité au-delà de ses propres systèmes.

Le développement de nouvelles applications et technologies continue de s'accélérer. Simultanément, la bataille des acteurs malveillants contre les lignes de défense de la sécurité informatique fait rage. La complexité croissante des systèmes d'application et la multitude de dépendances des systèmes modernes vis-à-vis de sources externes, dont certaines sont à petite échelle, augmentent encore le risque et la surface d'attaque des systèmes modernes. En identifiant les risques à un stade précoce et en mettant en place des processus éprouvés pour combler le plus rapidement possible les failles de sécurité, les entreprises peuvent devancer les attaquants. Un cadre solide, la contribution de la documentation et de l'automatisation des processus, ainsi que l'accès à des informations de qualité sont donc essentiels pour mettre en place et appliquer un processus professionnel efficace dans le traitement des vulnérabilités des applications cloud.