L’exploit SMBGhost menace les réseaux d’entreprise

La sortie d’un exploit de preuve de concept entièrement fonctionnel pour SMBGhost, une vulnérabilité critique d’exécution de code à distance (RCE) dans Windows pourrait déclencher une vague de cyberattaques, ont averti les autorités fédérales.

Microsoft a corrigé le bug identifié comme CVE-2020-0796 au mois de Mars. Egalement connu sous le nom de SMBGhost ou CoronaBlue, il affecte Windows 10 et Windows Server 2019. La faille se trouve dans la version 3.1.1 du protocole Microsoft Server Message Block (SMB), le même protocole qui a été ciblé par le célèbre ransomware WannaCry en 2017. SMB est un système de partage de fichiers qui permet à plusieurs clients d’accéder aux dossiers partagés et peut fournir un terrain de jeu intéressant pour les logiciels malveillants en ce qui concerne les mouvements latéraux et les infections de client à client.

Dans ce cas, SMBGhost est une vulnérabilité de dépassement d’entier dans la routine de décompression des messages SMBv3.1.1 du pilote du noyau srv2.sys.

smbghost

Microsoft a distribué son correctif, KB4551762, en tant que mise à jour pour Windows 10 (versions 1903 et 1909) et Windows Server 2019 (versions 1903 et 1909).

“Bien que Microsoft ait divulgué et fourni des mises à jour pour cette vulnérabilité en Mars 2020, des cyber-acteurs malveillants ciblent les systèmes non corrigés avec un nouvel exploit, selon de récents rapports open-source”, a averti la Cybersecurity and Infrastructure Security Agency (CISA). «La CISA recommande fortement d’utiliser un pare-feu pour bloquer les ports SMB et d’appliquer des correctifs aux vulnérabilités critiques et de gravité élevée dès que possible.»

L’auteur derrière la preuve de concept, qui se nomme «Chompie», a annoncé son exploit la semaine dernière sur Twitter. Plusieurs réponses ont confirmé que cet exploit de SMBGhost fonctionne vraiment.

La preuve de concept est remarquable car elle permet l’exécution de code à distance. Les tentatives précédentes d’exploiter SMBGhost n’ont abouti qu’à un déni de service ou à une élévation des privilèges locaux, selon les analystes de sécurité.

“Bien qu’il y ait déjà eu de nombreux rapports publics et preuve de concept d’élévation de privilèges locaux (Local Privilege Escalation), aucun d’entre eux n’a pu démontré que l’exécution de code à distance est en fait possible jusqu’à maintenant”, ont déclaré des chercheurs de Ricerca Security, qui ont fait une description complète de l’exploit de Chompie.

«C’est probablement parce que l’exploitation du noyau à distance est très différente de l’exploitation locale dans la mesure où un attaquant ne peut pas utiliser des fonctions de système d’exploitation utiles telles que la création de processus utilisateur, se référant à PEB et l’émission d’appels système.»

Windows 10 a également des atténuations spécifiques qui rendent l’exécution de code à distance beaucoup plus difficile à réaliser.

“Dans la dernière version de Windows 10, l’exécution de code à distance est devenu extrêmement difficile en raison de la randomisation des adresses presque sans faille”, ont expliqué les chercheurs.

«En un mot, nous déjouons cette atténuation en abusant des MDL (listes de descripteurs de mémoire), structures fréquemment utilisées dans les pilotes du noyau pour l’accès direct à la mémoire. En forgeant cette structure, cela nous permet de lire à partir de la mémoire «physique». Comme fondamentalement aucune exception ne se produira lors de la lecture des emplacements de mémoire physique, nous obtenons une primitive de lecture stable. »

keyboard

Comment se protéger de SMBGhost?

Pour protéger les réseaux, les administrateurs doivent appliquer les mises à jour. Microsoft a également proposé des solutions de contournement à ceux qui ne peuvent pas appliquer les correctifs. Par exemple, côté serveur, les entreprises peuvent désactiver la compression SMBv3 pour bloquer les attaquants non authentifiés, à l’aide d’une commande PowerShell: “Set-ItemProperty -Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” DisableCompression -Type DWORD -Value 1 -Force. Aucun redémarrage n’est nécessaire.

Pour protéger les clients SMB non patchés face à SMBGhost, Microsoft a ajouté qu’il était possible de bloquer le trafic via des pare-feu et d’autres méthodes. Les entreprises peuvent par exemple simplement bloquer le port TCP 445 au niveau du pare-feu du périmètre d’entreprise (bien que les systèmes puissent toujours être vulnérables aux attaques à l’intérieur du périmètre d’entreprise).