Au cœur de l’attaque du ransomware Petya

Une attaque massive par ransomware, lié à une variante de Petya, a ciblé de nombreux utilisateurs en ce début de semaine, plus particulièrement en Europe.  Cette variante, déjà détectée par Trend Micro en tant que RANSOM_PETYA.SMA, utilise la vulnérabilité  EternalBlue et l’outil PsExec en tant que vecteurs d’infection.

Il est donc recommandé aux utilisateurs et aux organisations de prendre les dispositions suivantes au plus vite pour prévenir toute infection

  • Installer le patch de sécurité MS17-010
  • Désactiver le port TCP 445
  • Limiter les comptes disposant d’un accès d’administrateur de groupe

Mode d’infection

Comment indiqué précédemment, l’introduction du ransomware dans le système se fait après utilisation de l’outil PsExec, un utilitaire officiel de Microsoft qui permet de gérer des processus sur des systèmes distants. Elle exploite la vulnérabilité EternalBlue –aussi utilisée par l’attaque WannaCry – qui tire parti d’une vulnérabilité dans Server Message Block (SMB) v1. Une fois rentrée dans le système, cette variante de Petya utilise le processus rundll32.exe pour s’exécuter. Le processus de chiffrement est mené par un fichier nommé perfc.dat, situé dans le dossier Windows.

Le ransomware ajoute ensuite une tâche programmée qui redémarre le système après environ une heure. Entretemps, le MBR (Master Boot Record ou zone amorce) est également modifié pour que le chiffrement puisse démarrer et que la demande de rançon s’affiche. Un faux écran CHKDSK s’affiche initialement, pendant que le chiffrement est en cours. Ce qui est peu classique pour un ransomware est que le chiffrement ne modifie pas l’extension des fichiers chiffrés. D’ailleurs, ce sont plus de 60 extensions de fichiers sont ciblés pour le chiffrement et qui sont représentatives, pour l’essentiel des fichiers utilisés dans le cadre professionnel. Les fichiers image et vidéo n’en font pas partie.

Schéma1. Diagramme de l’infection

Schéma 2. Écran affiché au redémarrage

Schéma 3. Demande de rançon affichée après le redémarrage

Petya utilise des processus Windows légitimes, PsExec et Windows Management Information Command-line, qui est une interface pour simplifier l’utilisation de Windows Management Instrumentation (WMI).

Une fois Petya introduit, il installe psexec.exe en tant que dllhost.dat sur la machine infectée. Le malware se duplique également vers \\{nom de la machine distante}\admin$\{nom de fichier du malware }. La copie est ensuite exécutée en local à l’aide de dllhost.dat (qui est le nom de fichier de l’outil PSExec ) et avec les paramètres suivants :

dllhost.dat \\{nom de la machine distante} -accepteula -s -d C:\Windows\System32\rundll32 “C:\Windows\{nom de fichier du malware}”,#1 {nombre aléatoire minimum 10} {identifiants}

Le format des identifiants est le suivant :

“un1:pw1” “un2:pw2” “un3:pw3” … “unN:pwN”

Si cette méthode échoue, Petya utilise alors WMIC.EXE pour exécuter le fichier sur la machine distante :

%System%\wbem\wmic.exe /node:”{noeud}” /user:”{nom d’tilisateur}” /mot de passe:”{mot de passe}” process call create “C:\Windows\System32\rundll32 \”C:\Windows\{nom de fichier du malware}\” #1 {nombre aléatoire minimum 10} {identifiants}”

Petya utilise PSExec ou WMIC pour propager le malware vers d’autres systèmes au sein du réseau local. Si cette étape de la chaîne d’infection échoue, c’est à ce moment que Petya utilise la vulnérabilité  EternalBlue.

Méthode d’extraction de l’Information

Nous avons identifié que cette variante de Petya utilise une méthode sophistiquée pour extraire de l’information des systèmes infectés. Il utilise une version personnalisée de  Mimikatz— un outil de sécurité légitime — pour récupérer les noms d’utilisateurs et les mots de passe. Les exécutables de Mimikatz en 32-bit et 64-bit sont chiffrés et stockés dans la section des ressources du ransomware. La méthode d’extraction est exécutée lorsque le malware principal ouvre un tube qui est utilisé par la version personnalisée de Mimikatz pour écrire ses résultats. Ces résultats sont ensuite lus par le principal processus du malware. Comme indiqué  plus haut, Petya est capable de se protéger vers d’autres systèmes au sein du réseau local en utilisant cette information extraite.

Modifications sur le disque

Petya modifie le MBR and de procéder au chiffrement. Le secteur qui suit le VBR (Volume Boot Record) est codé (0xBAADF00D), ce qui rend tout redémarrage impossible.

Petya accède également aux secteurs suivants :

  • Les secteurs 0 à 18 (partition de disque  0 à 25FFh) sont écrasés par le propre menu de démarrage du malware.
  • Le secteur 32 (partition de disque 4000h à 41FFh) est écrit avec des données aléatoires structurées.
  • Le secteur 33 (partition de disque 4200h à 43FFh) est rempli par 07h.

Le MBR original est chiffré :

  • Le secteur 34 (partition de disque 4400h à 45FFh) est écrit avec le MBR d’origine chiffré à l’aide de XOR.

Si cette méthode échoue, les secteurs 0 à 9 seront écrasés et encodés (0xBAADF00D).

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *