Un nouveau ransomware, Nemty, est apparu en ligne, qui semble ĂȘtre le successeur de GrandCrab ou de Buran. Ce logiciel malveillant se propage principalement via un faux site PayPal et possĂšde plusieurs caractĂ©ristiques intĂ©ressantes. Les dĂ©tails sur le fonctionnement de ce ransomware sont prĂ©sentĂ©s ci-dessous.

Le nouveau ransomware Nemty a Ă©tĂ© dĂ©couvert par un utilisateur le 7 septembre 2019. Le logiciel malveillant s'est propagĂ© via un site, , et il est Ă©galement possible que le ransomware pĂ©nĂštre l'ordinateur via un kit d'exploitation RIG. Les cybercriminels ont utilisĂ© des mĂ©thodes d'ingĂ©nierie sociale pour inciter l'utilisateur Ă lancer le fichier cashback.exe, qu'il prĂ©tend obtenir depuis le site PayPal. Il est Ă©galement curieux de noter que dans Nemty, un port incorrect est indiquĂ© pour le service proxy local Tor, ce qui empĂȘche le logiciel malveillant d'envoyer des donnĂ©es au serveur. L'utilisateur devra donc tĂ©lĂ©charger lui-mĂȘme les fichiers chiffrĂ©s sur le rĂ©seau Tor s'il souhaite payer la rançon et attendre le dĂ©chiffrement de la part des criminels.
Plusieurs faits intĂ©ressants sur Nemty suggĂšrent qu'il a Ă©tĂ© dĂ©veloppĂ© par les mĂȘmes personnes ou par des cybercriminels associĂ©s Ă Buran et GrandCrab.
- Tout comme dans GandCrab, Nemty contient une blague cachĂ©e â un lien vers une photo du prĂ©sident russe Vladimir Poutine avec une blague vulgaire. Dans l'ancien ransomware GandCrab, il y avait Ă©galement une image avec le mĂȘme texte.
- Les artefacts linguistiques des deux programmes indiquent les mĂȘmes auteurs russophones.
- C'est le premier ransomware utilisant une clé RSA de 8092 bits. Bien que cela n'ait pas de sens : une clé de 1024 bits est suffissante pour se protéger contre le piratage.
- Tout comme Buran, le ransomware est écrit en Object Pascal et compilé avec Borland Delphi.
Analyse statique
L'exécution du code malveillant se déroule en quatre étapes. La premiÚre étape consiste à lancer cashback.exe, un fichier exécutable PE32 pour MS Windows d'une taille de 1198936 octets. Son code est écrit en Visual C++ et compilé le 14 octobre 2013. Il contient une archive qui se décompresse automatiquement lors du lancement de cashback.exe. Le logiciel utilise la bibliothÚque Cabinet.dll et ses fonctions FDICreate(), FDIDestroy() et d'autres pour récupérer des fichiers de l'archive .cab.


SHA-256 : A127323192ABED93AED53648D03CA84DE3B5B006B641033EB46A520B7A3C16FC
AprÚs la décompression de l'archive, trois fichiers apparaßtront.

Ensuite, temp.exe est lancé, un fichier exécutable PE32 pour MS Windows d'une taille de 307200 octets. Le code est écrit en Visual C++ et empaqueté avec l'outil MPRESS, similaire à UPX.

SHA-256 : EBDBA4B1D1DE65A1C6B14012B674E7FA7F8C5F5A8A5A2A9C3C338F02DD726AAD
La prochaine étape est ironman.exe. AprÚs le lancement, temp.exe déchiffre les données intégrées dans temp et les renomme en ironman.exe, un fichier exécutable PE32 de taille 544768 octets. Le code est compilé avec Borland Delphi.
![]()
SHA-256: 2C41B93ADD9AC5080A12BF93966470F8AB3BDE003001492A10F63758867F2A88
La derniÚre étape consiste à redémarrer le fichier ironman.exe. Pendant son exécution, il transforme son code et s'exécute à partir de la mémoire. Cette version de ironman.exe est malveillante et est responsable du chiffrement.
Vecteur d'attaque
Ă l'heure actuelle, le ransomware Nemty se propage par le site pp-back.info.

Vous pouvez voir toute la chaĂźne de contamination sur sandbox.
Installation
Cashback.exe est le dĂ©but de l'attaque. Comme mentionnĂ©, cashback.exe dĂ©compresse le fichier .cab qu'il contient. Il crĂ©e ensuite un dossier TMP4351$.TMP de type %TEMP%IXxxx.TMP, oĂč xxx est un nombre de 001 Ă 999.


Ensuite, une clé de registre est installée, qui ressemble à ceci :
[HKLMSOFTWAREWOW6432NodeMicrosoftWindowsCurrentVersionRunOncewextract_cleanup0]
ârundll32.exeâ âC:Windowssystem32advpack.dll,DelNodeRunDLL32 «C:UsersMALWAR~1AppDataLocalTempIXPxxx.TMP»â
Elle est utilisée pour supprimer les fichiers décompressés. Enfin, cashback.exe lance le processus temp.exe.

Temp.exe est la deuxiÚme étape de la chaßne de contamination.
C'est un processus lancé par le fichier cashback.exe, la deuxiÚme étape de l'exécution du virus. Il essaie de télécharger AutoHotKey, un outil pour exécuter des scripts sous Windows, et de lancer le script WindowSpy.ahk, situé dans la section des ressources du fichier PE.

Le script WindowSpy.ahk déchiffre le fichier temp en ironman.exe, en utilisant l'algorithme RC4 et le mot de passe IwantAcake. La clé du mot de passe est générée à l'aide de l'algorithme de hachage MD5.
Ensuite, temp.exe appelle le processus ironman.exe.
![]()
Ironman.exe est la troisiÚme étape.
Ironman.exe lit le contenu du fichier iron.bmp et crée un fichier iron.txt avec le cryptolocker qui sera lancé ensuite.


AprÚs cela, le virus charge iron.txt en mémoire et le redémarre en tant que ironman.exe. Ensuite, iron.txt est supprimé.
ironman.exe est la partie principale du ransomware NEMTY, qui chiffre les fichiers sur l'ordinateur infecté. Le logiciel malveillant crée un mutex nommé hate.

Tout d'abord, il détermine l'emplacement géographique de l'ordinateur. Nemty ouvre un navigateur et découvre l'IP sur . Sur le site [IP]/countryName selon l'IP obtenue, le pays est déterminé, et si l'ordinateur se trouve dans l'une des régions énumérées ci-dessous, l'exécution du code malveillant est interrompue :
- Russie
- Biélorussie
- Ukraine
- Kazakhstan
- Tadjikistan
Il est probable que les dĂ©veloppeurs ne veulent pas attirer l'attention des autoritĂ©s dans les pays oĂč ils rĂ©sident, et c'est pourquoi ils ne chiffrent pas les fichiers dans leurs "juridictions natales".
Si l'adresse IP de la victime ne figure pas sur la liste ci-dessus, le virus chiffre les informations de l'utilisateur.

Pour empĂȘcher la restauration des fichiers, leurs copies ombres sont supprimĂ©es :

Ensuite, une liste de fichiers et de dossiers qui ne seront pas chiffrés est créée, ainsi qu'une liste d'extensions de fichiers.
- windows
- $RECYCLE.BIN
- rsa
- NTDETECT.COM
- ntldr
- MSDOS.SYS
- IO.SYS
- boot.ini AUTOEXEC.BAT ntuser.dat
- desktop.ini
- CONFIG.SYS
- BOOTSECT.BAK
- bootmgr
- programdata
- appdata
- osoft
- Common Files
log LOG CAB cab CMD cmd COM com cpl
CPL exe EXE ini INI dll DDL lnk LNK url
URL ttf TTF DECRYPT.txt NEMTY Obfuscation
Pour cacher les URL et les données de configuration intégrées, Nemty utilise un algorithme de codage base64 et RC4 avec la phrase clé fuckav.

Le processus de déchiffrement utilisant CryptStringToBinary se déroule comme suit

Chiffrement
Nemty utilise un chiffrement Ă trois niveaux :
- AES-128-CBC pour les fichiers. Une clĂ© AES de 128 bits est gĂ©nĂ©rĂ©e alĂ©atoirement et utilisĂ©e de la mĂȘme maniĂšre pour tous les fichiers. Elle est stockĂ©e dans le fichier de configuration sur l'ordinateur de l'utilisateur. L'IV est gĂ©nĂ©rĂ© alĂ©atoirement pour chaque fichier et est stockĂ© dans le fichier chiffrĂ©.
- RSA-2048 pour le chiffrement des fichiers IV. Une paire de clés pour la session est générée. La clé privée de la session est stockée dans le fichier de configuration sur l'ordinateur de l'utilisateur.
- RSA-8192. La clĂ© publique principale est intĂ©grĂ©e dans le programme et utilisĂ©e pour chiffrer le fichier de configuration, oĂč sont stockĂ©es la clĂ© AES et la clĂ© secrĂšte pour la session RSA-2048.
- Tout d'abord, Nemty génÚre 32 octets de données aléatoires. Les 16 premiers octets sont utilisés comme clé AES-128-CBC.

Le second algorithme de chiffrement est RSA-2048. La paire de clés est générée par la fonction CryptGenKey() et importée par la fonction CryptImportKey().

AprÚs que la paire de clés pour la session a été générée, la clé publique est importée dans le fournisseur de services cryptographiques MS.

Exemple de clé publique générée pour la session :

Ensuite, la clé privée est importée dans le CSP.

Exemple de clé privée générée pour la session :
Et enfin, vient RSA-8192. La clé publique principale est stockée sous forme chiffrée (Base64 + RC4) dans la section .data du fichier PE.

La clé RSA-8192 aprÚs décodage base64 et déchiffrement RC4 avec le mot de passe fuckav ressemble à ceci.

En conséquence, l'ensemble du processus de chiffrement se déroule comme suit :
- Génération d'une clé AES de 128 bits qui sera utilisée pour chiffrer tous les fichiers.
- Création d'un IV pour chaque fichier.
- Création d'une paire de clés pour la session RSA-2048.
- Déchiffrement de la clé RSA-8192 existante à l'aide de base64 et RC4.
- Chiffrement du contenu des fichiers avec l'algorithme AES-128-CBC de la premiÚre étape.
- Chiffrement de l'IV avec la clé publique RSA-2048 et encodage en base64.
- Ajout de l'IV chiffré à la fin de chaque fichier chiffré.
- Ajout de la clé AES et de la clé privée de la session RSA-2048 dans la configuration.
- Les données de configuration décrites dans la section sur l'ordinateur infecté, sont chiffrées à l'aide de la clé publique principale RSA-8192.
- Le fichier chiffré ressemble à ceci :
Exemple de fichiers chiffrés :
Collecte d'informations sur l'ordinateur infecté
Le ransomware collecte les clés pour déchiffrer les fichiers infectés, permettant ainsi à l'attaquant de réellement créer un déchiffreur. De plus, Nemty collecte des données utilisateur, telles que le nom d'utilisateur, le nom de l'ordinateur, le profil matériel.

Il appelle les fonctions GetLogicalDrives(), GetFreeSpace(), GetDriveType() pour rassembler des informations sur les disques de l'ordinateur infecté.
Les informations collectées sont stockées dans un fichier de configuration. En décodant la chaßne, nous obtenons une liste des paramÚtres dans le fichier de configuration :

Exemple de configuration de l'ordinateur infecté :

Le modĂšle de configuration peut ĂȘtre prĂ©sentĂ© comme suit :
{«General»: {«IP»:»[IP]»,«Country»:»[Country]»,«ComputerName»:»[ComputerName]»,«Username»:»[Username]»,«OS»:»[OS]»,«isRU»:false,«version»:«1.4»,«CompID»:»{[CompID]}»,«FileID»:»_NEMTY_[FileID]_»,«UserID»:»[UserID]»,«key»:»[key]»,«pr_key»:»[pr_key]
Les données collectées par Nemty sont stockées au format JSON dans le fichier %USER%/ _NEMTY_.nemty. FileID, d'une longueur de 7 caractÚres, est généré aléatoirement. Par exemple : _NEMTY_tgdLYrd_.nemty. FileID est également ajouté à la fin du fichier chiffré.
Message de rançon
AprĂšs le chiffrement des fichiers, un fichier _NEMTY_[FileID]-DECRYPT.txt apparaĂźt sur le bureau avec le contenu suivant :

à la fin du fichier se trouve des informations chiffrées sur l'ordinateur infecté.

Communication réseau
Le processus ironman.exe télécharge le distributeur du navigateur Tor à partir de l'adresse et tente de l'installer.
Ensuite, Nemty tente d'envoyer les donnĂ©es de configuration Ă l'adresse 127.0.0.1:9050, oĂč il attend de trouver un serveur proxy fonctionnel du navigateur Tor. Cependant, par dĂ©faut, le serveur proxy Tor Ă©coute sur le port 9150, tandis que le port 9050 est utilisĂ© par le dĂ©mon Tor sous Linux ou par l'Expert Bundle sous Windows. Ainsi, les donnĂ©es ne sont pas envoyĂ©es au serveur de l'attaquant. Au lieu de cela, l'utilisateur peut tĂ©lĂ©charger manuellement le fichier de configuration en visitant le service de dĂ©chiffrement Tor via le lien fourni dans le message de rançon.
Connexion au proxy Tor :

![]()
HTTP GET gĂ©nĂšre une requĂȘte vers 127.0.0.1:9050/public/gate?data=

Ici, vous voyez les ports TCP ouverts utilisés par le proxy TORlocal :

Service de déchiffrement Nemty sur le réseau Tor :

Vous pouvez télécharger une photo chiffrée (jpg, png, bmp) pour tester le service de déchiffrement.

AprÚs cela, l'attaquant demande une rançon. En cas de non-paiement, le prix double.

Conclusion
Ă l'heure actuelle, dĂ©chiffrer les fichiers chiffrĂ©s par Nemty sans payer la rançon n'est pas possible. Cette version du ransomware a des similitudes avec les ransomwares Buran et l'ancien GandCrab : compilĂ©e sur Borland Delphi et les images contenant le mĂȘme texte. De plus, c'est le premier ransomware Ă utiliser une clĂ© RSA de 8092 bits, ce qui, rappelons-le, n'a aucun sens, car une clĂ© de 1024 bits est largement suffisante pour la protection. Enfin, il est curieux qu'il tente d'utiliser un mauvais port pour le service proxy local de Tor.
Cependant, des solutions et empĂȘchent le ransomware Nemty d'accĂ©der aux ordinateurs et donnĂ©es des utilisateurs, et les fournisseurs peuvent protĂ©ger leurs clients grĂące Ă . Une protection complĂšte offre non seulement des sauvegardes, mais aussi une protection utilisant , une technologie spĂ©ciale basĂ©e sur l'intelligence artificielle et l' heuristique comportementale, permettant de neutraliser mĂȘme les malwares encore inconnus.
Source : habr.com
