
L'objectif est de trier les attaques bien connues et d'apprendre comment les équipes de sécurité répondent rapidement.
Pour ce laboratoire, l'objectif était de trier une autre vulnérabilité réelle bien connue, cette fois EternalBlue, la faille SMBv1 qui a été tristement célèbre pour avoir été exploitée par la vague de ransomware WannaCry.
Je suis allé sur la National Vulnerability Database et j'ai cherché la CVE :
https://nvd.nist.gov/vuln/search#/nvd/home?resultType=records
J'ai recherché CVE-2017-0144 et ouvert la page de résultat.
Après avoir lu la description, j'ai répondu à quelques questions de base pour comprendre ce qui est réellement en jeu :
J'ai trouvé le score CVSS et la chaîne de vecteur listés sur la page :
J'ai parcouru la chaîne de vecteur morceau par morceau pour voir ce que chaque partie signifiait réellement :
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Celle-ci nécessite un petit niveau de privilège pour être exploitée (contrairement à ProxyLogon, qui n'en nécessitait aucun), mais elle ne nécessite toujours aucune interaction de l'utilisateur, et une attaque réussie compromet toujours entièrement la confidentialité, l'intégrité et la disponibilité. Cette combinaison explique en grande partie pourquoi EternalBlue était si dangereux une fois associé à un ver à auto-propagation comme WannaCry.
J'ai vérifié la section Weakness Enumeration sur la page NVD pour cette CVE, mais aucune CWE n'y était listée.
J'ai réfléchi à la façon dont je traiterais ce risque comme plus élevé ou plus faible dans deux scénarios différents.
Scénario 1 : Le logiciel vulnérable est actif et accessible. Risque plus élevé. Cette vulnérabilité permet à un attaquant d'accéder à distance au serveur, d'exécuter du code et d'accéder aux fichiers.
Scénario 2 : Le logiciel vulnérable est installé sur une machine qui est éteinte et inaccessible. Risque plus faible. Sans alimentation ni connexion réseau, un attaquant ne peut en aucun cas atteindre le serveur pour exploiter la vulnérabilité.
En comparant cela au triage de ProxyLogon, c'est un bon exemple de la façon dont deux vulnérabilités critiques peuvent encore différer dans les détails : EternalBlue nécessite de faibles privilèges alors que ProxyLogon n'en nécessitait aucun, mais les deux se retrouvent dans la catégorie « à traiter comme à risque élevé » dès que l'on considère l'ampleur des dégâts qu'une exploitation réussie pourrait causer. Comme précédemment, le risque réel dépend toujours du contexte : la même vulnérabilité est bien moins dangereuse sur une machine hors ligne et inaccessible.