Une nouvelle divulgation fatale
Le week-end dernier, le groupe « The Shadow brokers» a publié une nouvelle archive contenant les outils volés au groupe de hackers « Equation group ». Cette nouvelle divulgation, après celle du 8 avril [1] pour les systèmes UNIX, concerne principalement :
- Le système d’exploitation Windows ;
- Le réseau bancaire SWIFT.
Comme pour les précédentes publications, l’ensemble des outils et des données sont accessibles librement sur internet [2]. Un référentiel des différents exploits [3] est actuellement tenu à jour par la communauté.
La suite de cet article se concentrera sur l’exploitation de la vulnérabilité MS17-010.
MS17-010, digne successeur de MS08-067
Petit retour en 2008, Microsoft déployait le patch MS08-067 destiné à corriger une vulnérabilité critique sur ces systèmes permettant d’exécuter du code à distance sans authentification. Le ver « Conficker » avait notamment exploité cette vulnérabilité pour compromettre plusieurs millions d’ordinateurs.
Le bulletin de sécurité MS17-010 s’annonce tout aussi intéressant et permet la prise de contrôle à distance d’un poste de travail ou d’un serveur utilisant le système d’exploitation Windows. La vulnérabilité est déjà exploitée par des ransomwares.
Identification des systèmes vulnérables
A ce jour, l’exploitation de MS17-010 concerne les versions suivantes exposant le protocole SMB :
- Windows XP et Windows Server 2003;
- Windows Seven et Windows Server 2008 R2.
Il est cependant nécessaire de noter que le patch déployé par Microsoft [4] concerne l’ensemble des versions de Windows. Il ne serait pas étonnant de voir apparaitre dans les semaines à venir une exploitation concernant Windows 8 et Windows 10.
Un système vulnérable peut être identifié sur le réseau grâce à l’intégration d’un scanner dans le framework metasploit « smb_ms17_010 » [5] :
Exploitation avec EternalBlue et DoublePulsar
L’exploitation est d’une facilité déconcertante grâce au framework FuzzyBunch, présent lui aussi dans les outils publiés. En effet, l’étape la plus complexe est de trouver une machine Windows XP ou 7 en 32 bits et une version obsolète de Python et PyWin (2.6) pour le lancer.
L’exploitation est composée de deux étapes :
- Déploiement d’une backdoor avec le module EternalBlue ;
- Injection d’une dll malveillante avec le module DoublePulsar.
Après l’installation des prérequis, FuzzyBunch est situé dans le répertoire Windows et se lance avec la commande suivante « python fb.py ». Suite à la configuration d’un projet et de la cible (ici le p, le framework d’exploitation se rapproche très fortement de metasploit :
Comme énoncé précédemment, le déploiement de la backdoor se réalise via le module EternalBlue sélectionnable avec la fonction use :
La configuration par défaut est amplement suffisante pour une première prise en main, une description des différentes options peut être trouvée ici [6]. Il est maintenant possible d’admirer le travail :
Le déploiement de la backdoor s’effectue via la version 1 et 2 du protocole SMB [7]. L’utilisation de la backdoor est ensuite effectuée avec le module DoublePulsar qui permet d’injecter une dll malveillante dans un processus prédéfini :
La dll injectée a été préalablement générée avec msfvenom pour ouvrir une session meterpreter sur un metasploit en écoute :
L’injection de la dll a été accomplie avec succès et il est possible de le confirmer avec l’ouverture de la session meterpreter vers la cible :
La session meterpreter permet ainsi d’exécuter des commandes sur la cible vulnérable avec les droits « NT AUTHORITY\SYSTEM», le plus haut niveau de privilège sur Windows.
Remédiation
La solution la plus efficace est de déployer immédiatement le patch MS17-10 et de désactiver la version 1 du protocole SMB sur l’ensemble de votre parc. Il peut même s’avérer souhaitable de vérifier qu’aucune backdoor n’est pas déjà présente sur les systèmes les plus sensibles [8].
Conclusion
Cette dernière divulgation par le groupe « The Shadow Brokers » rend triviale l’exploitation d’une vulnérabilité critique sur l’environnement Windows. Cette vulnérabilité n’est cependant pas une 0-day car elle a été corrigée il y a un tout juste un mois par Microsoft. L’importance de déployer régulièrement les patchs sur ses environnements est encore une fois démontrer !
Rémi ESCOURROU