Rencontrez le rançongiciel Nemty à partir d'un faux site PayPal

Un nouveau rançongiciel Nemty est apparu sur le réseau, qui serait le successeur de GrandCrab ou Buran. Les logiciels malveillants sont principalement distribués à partir d'un faux site PayPal et présentent un certain nombre de fonctionnalités intéressantes. Détails sur le fonctionnement de ce ransomware - sous la coupe.

image

Le nouveau rançongiciel Nemty a été découvert par l'utilisateur nao_sec le 7 septembre 2019. Des logiciels malveillants ont été distribués via un site déguisé en PayPal ; il existe également la possibilité de rançongiciels pénétrer un ordinateur via le kit d'exploitation RIG. Les attaquants ont choisi des méthodes d'ingénierie sociale pour forcer l'utilisateur à exécuter le fichier cashback.exe, qu'il aurait reçu du site PayPal. Il est également curieux que Nemty ait spécifié le mauvais port pour le service proxy local Tor, ce qui empêche les logiciels malveillants d'envoyer des données au serveur. Par conséquent, l'utilisateur devra télécharger lui-même les fichiers cryptés sur le réseau Tor s'il a l'intention de payer la rançon et d'attendre le décryptage des attaquants.

Quelques faits intéressants sur Nemty suggèrent qu'il a été développé par les mêmes personnes ou cybercriminels associés à Buran et GrandCrab.

  • Comme GandCrab, Nemty a un œuf de Pâques - un lien vers une photo du président russe Vladimir Poutine avec une plaisanterie obscène. Le rançongiciel GandCrab hérité avait une image avec le même texte.
  • Les artefacts linguistiques des deux programmes pointent vers les mêmes auteurs russophones.
  • Il s'agit du premier chiffreur à utiliser la clé RSA 8092 bits. Même si cela n'a aucun sens: une clé de 1024 bits pour se protéger contre le piratage suffit.
  • Comme Buran, le chiffreur est écrit en Object Pascal et compilé en Borland Delphi.

Analyse statique


L'exécution de code malveillant se déroule en quatre étapes. La première étape consiste à exécuter cashback.exe, un fichier exécutable PE32 sous 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 est automatiquement décompressée au démarrage de cashback.exe. Le logiciel utilise la bibliothèque Cabinet.dll et ses fonctions FDICreate (), FDIDestroy () et autres pour obtenir des fichiers à partir de l'archive .cab.

image

image

SHA-256: A127323192ABED93AED53648D03CA84DE3B5B006B641033EB46A520B7A3C16FC

Après avoir déballé l'archive, trois fichiers apparaissent.

image

Ensuite, temp.exe, un fichier exécutable PE32 sous MS Windows d'une taille de 307200 octets, est lancé. Le code est écrit en Visual C ++ et est conditionné par le packer MPRESS, un packer similaire à UPX.

image

SHA-256: EBDBA4B1D1DE65A1C6B14012B674E7FA7F8C5F5A8A5A2A9C3C338F02DD726AAD

La prochaine étape est ironman.exe. Après avoir exécuté temp.exe, il déchiffre les données incorporées dans temp et les renomme ironman.exe, un fichier exécutable PE32 de 544768 octets. Code compilé dans Borland Delphi.

image

SHA-256: 2C41B93ADD9AC5080A12BF93966470F8AB3BDE003001492A10F63758867F2A88

La dernière étape consiste à redémarrer le fichier ironman.exe. Au moment de l'exécution, il convertit son code et s'exécute à partir de la mémoire. Cette version de ironman.exe est malveillante et est responsable du cryptage.

Vecteur d'attaque


Actuellement, le rançongiciel Nemty est distribué via pp-back.info.

image

La chaîne d'infection complète peut être consultée sur le bac à sable app.any.run .

L'installation


Cashback.exe - le début de l'attaque. Comme déjà mentionné, cashback.exe décompresse le fichier .cab qu'il contient. Il crée ensuite un dossier TMP4351 $ .TMP de la forme% TEMP% \ IXxxx.TMP, où xxx est un nombre compris entre 001 et 999.

image

image

Ensuite, une clé de registre est installée, qui ressemble à ceci:

[HKLM \ SOFTWARE \ WOW6432Node \ Microsoft \ Windows \ CurrentVersion \ RunOnce \ wextract_cleanup0]
"Rundll32.exe" "C: \ Windows \ system32 \ advpack.dll, DelNodeRunDLL32" C: \ Users \ MALWAR ~ 1 \ AppData \ Local \ Temp \ IXPxxx.TMP \ ""

Il est utilisé pour supprimer les fichiers décompressés. Enfin, cashback.exe démarre le processus temp.exe.

image

Temp.exe - la deuxième étape de la chaîne d'infection

Il s'agit du processus démarré par 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 d'exécuter le script WindowSpy.ahk situé dans la section des ressources du fichier PE.

image

Le script WindowSpy.ahk déchiffre le fichier temporaire dans ironman.exe à l'aide de l'algorithme RC4 et du mot de passe IwantAcake. La clé du mot de passe est obtenue à l'aide de l'algorithme de hachage MD5.

Temp.exe appelle ensuite le processus ironman.exe.

image

Ironman.exe - la troisième étape

Ironman.exe lit le contenu du fichier iron.bmp et crée un fichier iron.txt avec un crypto-locker, qui démarre comme suit.

image

image

Après cela, le virus charge iron.txt dans la mémoire et le redémarre sous ironman.exe. Après cela, iron.txt est supprimé.

ironman.exe est la partie principale du rançongiciel NEMTY, qui crypte les fichiers sur l'ordinateur affecté. Un logiciel malveillant crée un mutex appelé haine.

image

Tout d'abord, il détermine l'emplacement géographique de l'ordinateur. Nemty ouvre un navigateur et reconnaît l'IP à http://api.ipify.org . Sur le site api.db-ip.com/v2/free [IP] / countryName, le pays est déterminé par l'IP reçue et si l'ordinateur se trouve dans l'une des régions répertoriées ci-dessous, l'exécution du code malveillant s'arrête:

  • La russie
  • Biélorussie
  • L'Ukraine
  • Kazakhstan
  • Tadjikistan

Très probablement, les développeurs ne veulent pas attirer l'attention des forces de l'ordre dans leur pays de résidence et ne chiffrent donc pas les fichiers dans leurs juridictions "natives".

Si l'adresse IP de la victime n'appartient pas à la liste ci-dessus, le virus crypte les informations de l'utilisateur.

image

Pour empêcher la récupération de fichiers, leurs clichés instantanés sont supprimés:

image

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.

  • fenêtres
  • $ 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
  • Fichiers communs

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 masquer les URL et les données de configuration intégrées, Nemty utilise un algorithme de codage base64 et RC4 avec le mot clé fuckav.

image

Le processus de décryptage utilisant CryptStringToBinary est le suivant

image

Cryptage


Nemty utilise un cryptage à trois couches:

  • AES-128-CBC pour les fichiers. Une clé AES 128 bits est générée de manière aléatoire et utilisée de la même manière pour tous les fichiers. Il est stocké dans le fichier de configuration sur l'ordinateur de l'utilisateur. IV est généré aléatoirement pour chaque fichier et stocké dans un fichier crypté.
  • RSA-2048 pour le cryptage de fichiers IV. Une paire de clés est générée pour la session. 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 au programme et est utilisée pour crypter le fichier de configuration, qui stocke la clé AES et la clé secrète pour la session RSA-2048.
  • Nemty génère d'abord 32 octets de données aléatoires. Les 16 premiers octets sont utilisés comme clé AES-128-CBC.

image

Le deuxième 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 ().

image

Une fois la paire de clés de la session générée, la clé publique est importée dans le fournisseur de services cryptographiques MS.

image

Un exemple de clé publique générée pour une session:

image

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

image

Un exemple de clé privée générée pour une session:

image

Et le dernier est le RSA-8192. La clé publique principale est stockée sous forme cryptée (Base64 + RC4) dans la section .data du fichier PE.

image

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

image

En conséquence, l'ensemble du processus de cryptage est le suivant:

  • Génération d'une clé AES 128 bits qui sera utilisée pour crypter tous les fichiers.
  • Créez IV pour chaque fichier.
  • Création d'une paire de clés pour une session RSA-2048.
  • Déchiffrement d'une clé RSA-8192 existante à l'aide de base64 et RC4.
  • Chiffrez le contenu du fichier à l'aide de l'algorithme AES-128-CBC dès la première étape.
  • Chiffrement IV à l'aide de la clé publique RSA-2048 et encodage en base64.
  • Ajout IV chiffré à la fin de chaque fichier chiffré.
  • Ajout de la clé AES et de la clé privée de session RSA-2048 à la configuration.
  • Les données de configuration décrites dans la section Collecte d'informations sur un ordinateur infecté sont chiffrées à l'aide de la clé publique principale RSA-8192.
  • Le fichier crypté est le suivant:

Exemple de fichiers cryptés:

Collecte d'informations sur un ordinateur infecté


Le ransomware collecte les clés pour décrypter les fichiers infectés, afin qu'un attaquant puisse réellement créer un décrypteur. En outre, Nemty collecte des données utilisateur, telles que nom d'utilisateur, nom d'ordinateur, profil matériel.

image

Il appelle les fonctions GetLogicalDrives (), GetFreeSpace (), GetDriveType () pour collecter des informations sur les disques de l'ordinateur infecté.

Les informations collectées sont stockées dans un fichier de configuration. Après avoir décodé la ligne, nous obtenons une liste de paramètres dans le fichier de configuration:

image

Exemple de configuration d'un ordinateur infecté:

image

Le modèle de configuration peut être représenté comme suit:

{"Général": {"IP": "[IP]", "Pays": "[Pays]", "ComputerName": "[ComputerName]", "Nom d'utilisateur": "[Nom d'utilisateur]", "OS": "[OS]", "isRU": false, "version": "1.4", "CompID": "{[CompID]}", "FileID": "_ NEMTY_ [FileID] _", "UserID": "[ UserID] "," key ":" [key] "," pr_key ":" [pr_key]

Nemty stocke les données collectées au format JSON dans le fichier% USER% / _ NEMTY_.nemty. Un ID de fichier de 7 caractères est généré de manière aléatoire. Par exemple: _NEMTY_tgdLYrd_.nemty. FileID est également ajouté à la fin du fichier crypté.

Message de forclusion


Après avoir chiffré les fichiers sur le bureau, le fichier _NEMTY_ [FileID] -DECRYPT.txt apparaît comme suit:

image

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

image

Communication réseau


Le processus ironman.exe télécharge la distribution du navigateur Tor à l'adresse https://dist.torproject.org/torbrowser/8.5.4/tor-win32-0.4.0.5.zip et essaie de l'installer.

Nemty tente ensuite d'envoyer des données de configuration à 127.0.0.1:9050, où il s'attend à trouver un proxy de navigateur Tor fonctionnel. Cependant, par défaut, le proxy Tor écoute sur le port 9150, et le port 9050 utilise le démon Tor sur Linux ou l'Expert Bundle sur Windows. Par conséquent, aucune donnée n'est envoyée au serveur attaquant. Au lieu de cela, l'utilisateur peut télécharger le fichier de configuration manuellement en visitant le service de déchiffrement Tor sur le lien fourni par le message de rançon.

Connexion au proxy Tor:

image
image

HTTP GET crée une demande à 127.0.0.1:9050/public/gate?data=

image

Vous voyez ici les ports TCP ouverts qui sont utilisés par le proxy TORlocal:

image

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

image

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

image

Après cela, l'agresseur demande à payer une rançon. En cas de non-paiement, le prix double.

image

Conclusion


Pour le moment, il n'est pas possible de décrypter les fichiers cryptés par Nemty sans payer de rançon. Cette version du ransomware présente des similitudes avec le ransomware Buran et l'héritage GandCrab: compilation sur Borland Delphi et images avec le même texte. De plus, il s'agit du premier chiffreur à utiliser la clé RSA 8092 bits, ce qui, encore une fois, n'a aucun sens, car une clé 1024 bits est tout à fait suffisante pour la protection. Enfin, curieusement, il essaie d'utiliser le mauvais port pour le service proxy local de Tor.

Cependant, les solutions Acronis Backup et Acronis True Image n'autorisent pas le rançongiciel Nemty à utiliser les PC et les données des utilisateurs, et les fournisseurs peuvent protéger leurs clients avec Acronis Backup Cloud . Full Cyber ​​Defense fournit non seulement des sauvegardes, mais également une protection à l'aide d' Acronis Active Protection , une technologie spéciale basée sur l'intelligence artificielle et l'heuristique comportementale qui peut neutraliser même les logiciels malveillants inconnus.

Source: https://habr.com/ru/post/fr471968/


All Articles