Le rançongiciel Petya / NotPetya

En avril, ne te découvre pas d’un fil, ce qui a permis d’éviter la vague WannaCry.
En mai, fais ce qu’il te plait et nous avons bien profité de ces week-end ensoleillés.
En juin, froid et pluvieux, tout l'an sera grincheux, ce que confirme cette nouvelle attaque, mais espérons que le reste de l’année ne soit pas grincheux.

Hier, en début d’après-midi, de nombreux postes de travail et quelques serveurs se sont retrouvés bloqués, chiffrés par un nouveau ver qui pourrait être apparenté à Petya (déjà connu) ou inspiré de Petya afin debrouiller les pistes.

alt

Vecteur d’infection

Le ver WannaCry qui se contentait d’infecter les cibles accessibles avec le protocole de partage de fichiers de Microsoft, SMB. Cette fois-ci, le vecteur n'est pas confirmé mais deux hypothèses sont évoquées :

  • une campagne de phishing à l’origine de l’infection;
  • la compromission d'un éditeur tier et la distribution de mises à jours malveillantes.

Ceci demande encore confirmation, mais dans le cas du phishing, si les analyses ne se mélangent pas avec une autre attaque, il débuterait par une classique pièce jointe Office exploitant la vulnérabilité CVE-2017-0199 et dans des fichiers RTF.

CVE-2017-0199

RTF (Rich Text Format) est un vieux format de document de Microsoft, toujours supporté par Word mais avec la particularité d’être, un peu comme HTML, un langage de mise en forme, contenant du texte, des images...
Voici un exemple simpliste de document RTF affichant « NetXP » :
{\rtf1\ansi\deff0 {\colortbl;\red0\green0\blue0;\red255\green0\blue0;} NetXP\line
}

La vulnérabilité, découverte par FireEye en début d’année et corrigée en avril, permet de contourner le mode protégé d’Office (mode protégé), non pas en exécutant une macro, mais en permettant d’activer un objet OLE, directement à l’ouverture du document, sans la moindre alerte. Il devient alors possible de faire appel à un objet OLE allant télécharger quelque chose sur Internet et c’est ce que fait ce nouveau ver : il va télécharger un fichier HTA pour HTML Application, permettant d’exécuter le vrai code malveillant et ainsi de prendre le contrôle de l’ordinateur.
De nombreux outils ont fait leur apparition, permettant de créer son propre document malveillant exploitant cette vulnérabilité :

  • Ici, sur github
  • Dans MetaSploit : exploit/windows/fileformat/officewordhta

Pour faire simple : l’utilisateur ouvre un document Word ou Excel envoyé en pièce jointe d’un mail, sans aucune alerte ni blocage, Word ou Excel va télécharger le fichier HTA sur un des sites ci-dessous, puis l’exécuter.

Pivot

Une fois le poste (ou un serveur) infecté, après certaines étapes non encore identifiées, le ver essaie de se propager sur le réseau (pivot latéral).
Incorporant des morceaux de l’outil Mimikatz, il est capable de récupérer des éléments d’authentification en mémoire et de les réutiliser avec le protocole de gestion Microsoft WMI pour s’exécuter sur une autre cible (lire ce tweet).

Parmi les chaines de caractères présentes dans le ver, on peut trouver des lignes de commande WMIC avec les paramètres permettant l’exécution à distance, authentifiée :

-d C:\Windows\System32\rundll32.exe "C:\Windows\%s",#1 wbem\wmic.exe
%s /node:"%ws" /user:"%ws" /password:"%ws" process call create "C:\Windows\System32\rundll32.exe \"C:\Windows\%s\" #1 \\%s\admin$ \\%ws\admin$\%ws

Il incorpore également l’outil de Microsoft « Sysinternals PsExec » pour tenter de progresser sur le réseau, tout comme nous l’utilisons parfois lors d’audits.
Enfin, il semblerait qu’il tente d’exploiter la vulnérabilité sur le protocole de partage de fichier de Microsoft « SMB », déjà exploitée par le rançongiciel de mars (WannaCry) et donc corrigée par le bulletin MS17-010.

Par contre, toujours pas d’information sur une possible élévation de privilège local ou un contournement de l’UAC ni sur la présence d’une « time bomb ».

Time bomb ?

Bien que non encore confirmé, l’apparition en même temps sur de nombreux ordinateurs d’entreprises différentes pourrait laisser penser à la présence d’une « time bomb », c’est-à-dire l’infection de la cible mais la mise en sommeil de la charge active jusqu’à la date fatidique de l’activation.
Ce point reste donc à confirmer ou infirmer.
Dans le cas de la compromission d'un éditeur tiers, la simultanéité s'expliquerait d'elle même.

« Kill Switch »

Les exemples du virus analysés cherchent la présence d’une librairie dans le répertoire c:\windows, indiquant que la cible est déjà compromise.
A lire ici et ici.
Je n’ai pas trouvé de façon sûre ce nom, mais il semblerait que cela soit c:\windows\core.dll ou c:\windows\perfc.dat ou C:\windows\perfc
C’est étrange que le nom soit en dur dans le code et ne soit pas lié à l’environnement infecté.

Il serait envisageable de déployer en urgence (par GPO par exemple) des fichiers vides nommés comme ci-dessus pour parer à toute infection supplémentaire, mais je doute que cela soit efficace très longtemps.

Bitcoins

Le portefeuille Bitcoin des criminels est celui-ci.
A cet instant, les criminels ont récupéré 3.155 bitcoins, c’est-à-dire 6680 euros.
Mais cela serait un leurre si les dernières informations sont confirmées et que ce ver serait uniquement destructeur et non un rançongiciel.

IoC

Voici quelques adresses IP qui "semblent" liées ce vers. Il peut être intéressant de regarder dans ses logs Proxy et Firewall si des accès ont été réalisés :
185.165.29.78
84.200.16.242
111.90.139.247
95.141.115.108 (Correspondant au domaine french-cooking.com 😉)

IBM a également communiqué quelques IoC, qui, là encore, doivent être maniés avec prudence :

Enfin, voici le Github de « Vulners Team » inclut un certain nombre d’autres éléments techniques.

Que faire ?

Depuis hier, nous sommes sur le pont avec un certains nombre de nos clients.
Parmi les premières actions, tout comme pour WannaCry, il nous semble important de mettre à jour ses systèmes - s’il ne l’étaient pas - mais aussi toutes ses solutions de sécurité liées aux flux des utilisateurs (Antivirus, Proxy, Passerelles mail, IDS/IPS...).
Il faut en parallèle communiquer rapidement auprès des utilisateurs, si ce n’est pas déjà fait, sans non plus créer de panique. Il est peut être intéressant d’interdire l’ouverture de pièce jointe provenant d’internet, tout du moins pendant la journée.
En cas d’infection, il faut naturellement couper les ressources infectées du réseau et faire une veille très attentive sur ce qui sera publié dans les prochaines heures.
A noter que si les analyses de Kaspersky et Talos sont justes, il est impossible de déchiffer.
Ensuite, il faudra reconstruire ses postes de travail ou serveurs, sans doute revoir le durcissement de ses systèmes, remettre à plat ses procédures de mises à jour pour essayer de déployer les correctifs de sécurité plus rapidement (ce qui n’est pas forcement aisé suivant les contextes), peut être envisager de limiter les flux entre les utilisateurs et revoir (mettre en place?) le cloisonnement de ses serveurs en n'ouvrant que le strict nécéssaire.

Réparer son boot ?

En cas d’infection, où le virus aurait eu accès aux privilèges « administrateur » et cassé le disque, il semblerait qu’il soit possible de récupérer le disque et les fichiers, avec les commandes suivantes en démarrant sur une clef USB ou un autre média, avec l’outil BootRec de Microsoft accessible dans le menu de récupération du démarrage :

bootrec /RebuildBcd bootrec /fixMbr
bootrec /fixboot

Nous n’avons pas testé cette solution, donc nous ne connaissons pas les effets en bord, en particulier en cas de disque précédemment chiffré par Bitlocker ou toute autre solution.
De plus, étant donné qu’il faut un accès physique au poste (ou serveur), il semble irréaliste d’utiliser cette méthode si de nombreux postes ont été compromis.

Bon courage si vous êtes en pleine crise.