(modifié le 16 juillet 2017 à 17:12)

Après WannaCry tout le monde parle du dernier ransomware fraichement sorti : Petya.

Aussi connu sous les noms de Pet(ya), Petrwrap, Petna, Pneytna, exPetr, SortaPetya et GoldenEye (Bitdefender). Petya était sorti en 2016 et comme cet malware s'apparente à Petya sur le mode de fonctionnement tout en étant différent certains préfèrent l'appeler NotPetya.

On pensait au début que Petya était similaire à WannaCry mais ce ransomware est plus dangereux à cause de ses vecteurs de propagation multiples. Ce ransomware vise plus particulièrement l'Ukraine, la Russie et la Pologne d'après Kaspersky.

Mais comment se propage Petya ?

Rappel du fonctionnement de Petya

J'ai tenté de croiser toutes les sources que j'ai pu trouver sur le fonctionnement du ransomware. Si vous trouvez une erreur merci de me la signaler en commentaire.

Petya tente d'abord d'élever ses privilèges (SeShutdowPrivilege / SeDebugPrivilege) pour l'utilisateur connecté. S'il n'y arrive pas alors il commence le chiffrement des fichiers stockés en local et basés sur soixantaine d'extensions (sympa pour les VM et KeePass!) :

https://twitter.com/mikko/status/879703285321674752

Si Petya arrive à passer admin il tente d'écraser le secteur d'amorçage du disque dur (MBR) du disque "PhysicalDrive 0".

S'il y a arrive Petya ajoute une tâche planifiée pour redémarrer de l'ordinateur dans un délai de 10 à 60 minutes.

Quand la machine redémarre un faux message annonçant qu'une vérification du disque par CHKDSK est en cours et ne doit pas être interrompue... sauf que pendant cette période ce n'est pas du tout une vérification disque comme le ferait le vrai CHKDSK.

Petya en profite pour chiffrer la table de partition (MFT). Cette table permet au système de fichier NTFS de savoir où sont stockés vos fichiers sur le disque. C'est la table des matières que l'on retrouve au début d'un ouvrage.

Petya chiffre chaque fichier en lui redonnant son nom initial, il n'y pas d'extension particulière (comme les .locky par exemple). Pas facile de le détecter...

Contrairement à la toute première version de WannaCry Petya ne contient aucun interrupteur d'urgence (killswitch). Le chercheur Amit Serper (Cybereason) a trouvé qu'il est possible d'empêcher le déclenchement de Petya en créant un fichier vide c:\windows\perfc sur une machine, puis en appliquant les droits NTFS en lecture seule sur celui-ci :

https://twitter.com/0xAmit/status/879778335286452224

Libre à vous de créer une GPO pour automatiser l'opération sur votre parc, ou un script bat comme le propose Bleepingcomputers (lien direct bat).

Pour plus de détails sur la façon de procéder je vous invite à lire le bulletin du CERT-FR qui détaille parfaitement bien ceci. Le CERT-FR précise que si la machine contient une table de partition GPT au lieu de MBR alors c'est un écran noir et non pas le message rouge qui apparâit au boot. Dans ce cas il suffit de reconstruire la table de partitions (avec testdisk par exemple) car les données ne sont pas effacées.

Les méthodes de propagation

WannaCry utilisait l'exploit eternalBlue qui se base sur une faille du protocole SMBv1.

Avant d'infecter l'ordinateur Petya scanne le réseau (port 139) et via NetServerEnum. Puis il tente de se propager de plusieurs façons :

  • via EternalBlue MS17-010 (comme WannaCry)
  • exécution WMI à distance
  • exécution de commande àvia PSEXEC

Comme il est nécessaire de disposer d'identifiants pour infecter le reste du réseau Petya va d'abord récupérer les identifiants locaux grâce à une version modifiée de Mimikatz, que ce soit dans une base SAM locale ou dans un Active Directory (violent!).

L'information a été confirmé par son créateur Benjamin Delpy :

https://twitter.com/gentilkiwi/status/879855038713274369

Mimikatz étant diffusé sous licence CC BY 4.0 le code source est librement accessible. C'est la 1ère fois que l'outil est utilisé à des fins malveillantes à une telle échelle, et Benjamin Delpy n'est pas content :

https://twitter.com/gentilkiwi/status/879865891558752257

Espérons que cela ne ruine pas l'avenir de Mimikatz qui reste un super outil pour les pentesters et les sysadmins.

Pas d'antidote

A l'heure actuelle aucune solution n'existe pour déchiffrer le disque et récupérer les données. Si le créateur de Mimikatz proposait une solution de récupération pour WannaCry ce n'est pas (encore) le cas pour Petya qui utilise un chiffrement AES-256 :

https://twitter.com/gentilkiwi/status/879820362053292032

Conclusion

La conclusion à donner à tout ça... maintenez votre parc informatique à jour, soyez stricts sur la politique de sécurité de l'entreprise (pas de droits admin non justifiés), controlez tous vos flux E/S (emails, surf web) et payez dignement vos sysAdmins s'il font leur métier avec passion, dans les règles de l'art, faites-leur confiance et ne les surchargez pas de boulot car ils ne pourront pas faire suffisemment de veille pour être proactif et éviter la catastrophe.

Sans oublier la sensibilisation des collaborateurs envers l'outil de messagerie, on ne clique jamais sans réfléchir avant.

Bon courage si vous êtes touchés par Petya. Si ce n'est pas le cas profitez-en pour vous blinder avant que cette saloperie ne se répande trop en europe. Et profitez-en pour faire des tests de restauration de vos bandes, ce serait dommage de voir 1 an trop tard que tous les fichiers que vous avez sauvegardé sont en fait illisibles car chiffrés.

MàJ : on commence à dire que Petya n'est pas un ransomware mais un wiper, c'est à dire qu'il n'est pas possible de récupérer les données chiffrées...

J'ajoute un résumé de @SwitHak (source).

Auteur : Mr Xhark

Fondateur du blog et passionné par les nouvelles techno, suivez-moi sur twitter