European Cyber Week – Retrouvez-nous sur le stand 30

MetaStealer (2/2) : le fantôme de RedLine

Temps de lecture : 9 min

Dans le premier article de cette série, nous avons analysé une chaîne d’infection récente plus sophistiquée observée pour MetaStealer : un fichier LNK usurpant l’icône Microsoft Edge, un MSI déguisé en installeur Docusign, et un payload Delphi de 740 Mo protégé par une machine virtuelle commerciale. Une orchestration à cinq stades, conçue pour contourner chaque couche de défense.

La seconde chaîne, datant de quelques mois, que nous présentons ici est plus directe. Un script batch obfusqué (potentiellement lancé par un chargement initial via un document ou un javascript malveillant), un dropper PE32 compilé avec MinGW, et un stealer .NET que les antivirus classifient unanimement comme… RedLine Stealer. Ce détail n’est pas une erreur de classification : il est au cœur de ce qui fait la particularité de MetaStealer, et nous permet d’éclairer la filiation entre les deux familles.

Rappel : MetaStealer, un clone fonctionnel de RedLine ?

Pour comprendre pourquoi le stealer final de cette chaîne est détecté comme RedLine, un rappel rapide s’impose.

Le 17 mars 2022, un acteur connu sous le pseudonyme _META_ publie sur le forum cybercriminel WWH-Club un nouvel infostealer : MetaStealer (ou META Stealer). Il revendique explicitement « le même code et le même panneau que RedLine Stealer ». L’analyse des chercheurs d’ESET le confirme : les deux malwares partagent très probablement le même créateur, le code source est quasi-identique, avec de simples remplacements de la chaîne « RedLine » par « Meta ».

Conséquence directe : les signatures AV développées pour RedLine s’appliquent directement à MetaStealer. Un binaire peut être légitimement tagué « MetaStealer » dans les bases CTI (MISP, MalwareBazaar) tout en étant détecté comme Troj/Redline-F par Sophos. Les deux lectures sont correctes.

L’Opération Magnus (28 octobre 2024, FBI + police néerlandaise + Eurojust) a démantelé les infrastructures centrales des deux familles et conduit à l’inculpation de Maxim Rudometov, développeur et administrateur présumé de RedLine.

Analyse de la chaîne BAT > Dropper > Stealer .NET

Le point d’entrée est un script batch. Sa cible : télécharger le dropper depuis hxxps[:]//ekaterinamironova[.]ru/blog/images/oc.exe. Le domaine est confirmé comme site de distribution MetaStealer dans nos bases de threat intelligence.

information sur metastealer dans glimps malware expert

Pour assurer la résilience du téléchargement, le script implémente une cascade de méthodes en fallback :

  1. curl (prioritaire)

  2. bitsadmin /transfer (fallback 1: T1197)

  3. certutil -urlcache -split -f (fallback 2: T1218.010)

  4. PowerShell Invoke-WebRequest (fallback final)

Toutes les commandes PowerShell utilisent -WindowStyle Hidden -NoProfile -ExecutionPolicy Bypass. Un fichier de log %temp%\debug_obf.log trace chaque étape. C’est l’artefact d’un outil de génération qui laisse ses traces de développement.

Trois actions suivent immédiatement le téléchargement :

Désactivation de Windows Defender via deux méthodes redondantes (PowerShell Add-MpPreference + registre HKLM\SOFTWARE\Microsoft\Windows Defender\Exclusions\Paths), avec des exclusions couvrant jusqu’au disque C:\ entier :

Chemin exclu
%APPDATA%\svchost.exe (payload déposé)
%TEMP%\svchost.exe
%APPDATA% (répertoire entier)
%TEMP% (répertoire entier)
C:\ (disque entier)

Bypass UAC via un fichier VBS temporaire (%temp%\OEgetPriv_*.vbs) utilisant Shell.Application.ShellExecute runas, technique classique mais toujours efficace sur les configurations par défaut :

Set UAC = CreateObject("Shell.Application")
UAC.ShellExecute "<chemin_bat>", "ELEV", "", "runas", 1

Double persistance : clé Run HKCU\...\Run\AdYQIJLNHV pointant vers le BAT lui-même, et copie du BAT dans le dossier Startup sous le nom svchost.bat, masquerading de processus système (T1036.005).

Observables BAT Downloader

Type Valeur Rôle
sha256 0a708b91a0147fee993c9b0a0e1ef15
fed9c5278b15ff406754d4a3dee1f256d
Script BAT downloader
domain ekaterinamironova[.]ru Site de livraison du dropper. Identifié metastealer
url hxxps[:]//ekaterinamironova.ru/blog/images/oc.exe URL de téléchargement du dropper
regkey HKCU\Software\Microsoft\Windows\CurrentVersion\Run\AdYQIJLNHV Persistance BAT
filename svchost.bat (%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\) Persistance au redémarrage

 

Stage 2 : le dropper PE32, extraction discrète

Le dropper, le fichier oc.exe téléchargé du stage précédent, est un PE32 compilé avec MinGW (GCC).

  • Checksum PE invalide (référence : 2 011 913, calculé : 1 623 027)

  • Section .rsrc avec entropie 7.88: payload chiffré ou compressé de ~550 Ko (ressource RT_RCDATA)

  • Imports clés : ShellExecuteA, CreateProcessA, CreateToolhelp32Snapshot, VirtualProtect, IsDebuggerPresent, CheckRemoteDebuggerPresent

Par contre, sa date de compilation ne semble pas spoof December 1, 2025 at 4:42:00 PM

analyse metastealer résultat deep engine glimps <a href=

Le Deep Engine de GLIMPS Malware nous pointe des features de ce binaire. Il va potentiellement modifier des permissions afin de rendre exécutables certaines zones mémoires. Il va aussi exécuter certaines actions en instanciant une ligne de commande.

L’analyse dynamique de GLIMPS Malware révèle le process tree d’exécution:

process tree metastealer

Extraction et persistance :

  • Extraction et dépôt du payload suivant, le stealer, sous le nom aléatoire z6ThcEH7WItN.exe dans %TEMP%

  • Création d’une tâche planifiée pour la persistance :

    schtasks /create /tn "WindowsUpdateVqEWXn" /tr "<chemin>" /sc onlogon /ru SYSTEM
  • Ajout d’une clé de registre Run : HKCU\...\Run\Windows Security Service p7jwm74E

Nettoyage et anti-analyse :

  • Exécution de cl.bat et melt.bat qui sont des scripts de nettoyage de traces probablement exécutés via un CMD.

  • Délai anti-sandbox : ping 127.0.0.1 -n 5

  • Anti-debug : IsDebuggerPresent, CheckRemoteDebuggerPresent

  • Énumération des processus via CreateToolhelp32Snapshot / Process32First/Next

illustration meta stealer

Observables du Dropper

Type Valeur Rôle
sha256 6c5f08e03aea51ddbab740787ca3a28
fd4569eca81f973ce67e38b95a6f2b9f9
Dropper PE32 (MinGW)
scheduled-task WindowsUpdateVqEWXn Persistance SYSTEM (onlogon)
regkey HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Windows Security Service p7jwm74E Persistance au redémarrage
filename z6ThcEH7WItN.exe Nom aléatoire du stealer droppé dans %TEMP%

Stage 3 : le stealer .NET, MetaStealer ou RedLine ?

Le payload final (Spulebane.exe en nom interne) est un PE32 .NET de 550 Ko. Les antivirus le classifient unanimement comme RedLine Stealer avec les signatures Troj/Redline-F et Win.Packed.Redline-10059030-0

Pourtant, nos bases de Threat Intelligence identifient son dropper comme metastealer.

aperçu base threat intelligence

Ces deux lectures sont cohérentes. Comme expliqué dans le cadrage, MetaStealer et RedLine partagent le même code source. Les signatures écrites pour l’un s’appliquent à l’autre.

Capacités documentées par le nom des fonctions du binaire.

L’analyse des 471 fonctions .NET identifiées révèle les capacités du stealer :

Capacité Fonctions identifiées
Vol credentials navigateurs GetBrowsers, ChromeGetName, m1–m37 (extraction Chromium)
Déchiffrement AES-GCM (Init, DoFinal), 3DES, DPAPI (cryptUnprotectData), PBKDF2
Bases SQLite navigateurs ReadContextTable, ReadContextValue, GatherValue
Tokens Discord ParseDiscordTokens, validation discord.com/api/v9/users
Capture d’écran CaptureScreen, CaptureWindow, MonitorSize
Informations système GetProcessors, GetWindowsVersion, ListOfProcesses, ListOfPrograms
C2 WCF/NetTcp DomainExists, PreCheck, Init → 45.156.87[.]228:27667

aperçu decision tree

La communication C2 utilise WCF/NetTcp (NetTcpBinding avec ServiceContract/OperationContract) — un choix délibéré : ce protocole est discret, moins souvent filtré que HTTP/S en environnement entreprise, et peu intercepté par les proxies standards.

L’adresse C2 45.156.87[.]228:27667 est référencée dans nos bases de Threat Intelligence comme « RedLine Stealer botnet C2 server ».

aperçu

L’identification est équivalente pour l’adresse IP secondaire 185.172.128[.]70.

aperçu

Observables : Stealer .NET

Type Valeur Rôle
sha256 3a2a0c6aad3b20724362d25b3c2ed9fa
55786c8ca5857f0c19e2ab0d44dcbe52
Stealer .NET (RedLine/MetaStealer)
sha256 0e62aa2ae288889dfaae23922d98ed
5bc5d30f40dc31c829344ca03033681aa9
Binaire auto-extrait intermédiaire
ip-dst 45.156.87[.]228:27667 C2 RedLine/MetaStealer (ThreatFox, confidence 100%)
ip-dst 185.172.128[.]70 C2 secondaire (abuse.ch, confidence 100%)
filename Spulebane.exe Nom interne du stealer (PE metadata)
url https://discord.com/api/v9/users Validation tokens Discord

Schéma de la chaîne

schéma de la chaîne d'attaque

Une chaîne d’attaque plus simple… mais efficace

Cette seconde chaîne est plus simple en apparence, un script batch, un dropper, un stealer, mais elle révèle l’essentiel de ce qui fait la durabilité de MetaStealer, son aspect Meta. Elle est encore récente (quelques mois à ce jour), mais son analyse révèle tout de même sa filiation directe avec RedLine et une forme de pérennité : même après l’Opération Magnus, les affiliés disposant de samples existants semblent continuer de les déployer via des infrastructures indépendantes.

Annexes (IOCs, techniques MITRE ATT&CK et références)

Récapitulatif des indicateurs de compromission

Type Valeur
sha256 0a708b91a0147fee993c9b0a0e1ef15fed9c5278b15ff406754d4a3dee1f256d
sha256 6c5f08e03aea51ddbab740787ca3a28fd4569eca81f973ce67e38b95a6f2b9f9
sha256 3a2a0c6aad3b20724362d25b3c2ed9fa55786c8ca5857f0c19e2ab0d44dcbe52
sha256 0e62aa2ae288889dfaae23922d98ed5bc5d30f40dc31c829344ca03033681aa9
domain ekaterinamironova[.]ru
url hxxps[:]//ekaterinamironova.ru/blog/images/oc.exe
ip-dst 45.156.87[.]228:27667
ip-dst 185.172.128[.]70
regkey HKCU\Software\Microsoft\Windows\CurrentVersion\Run\AdYQIJLNHV
regkey HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Windows Security Service p7jwm74E
scheduled-task WindowsUpdateVqEWXn
filename svchost.bat
filename z6ThcEH7WItN.exe
filename Spulebane.exe

 

Techniques MITRE ATT&CK

Technique ID Composant
Windows Command Shell T1059.003 BAT, dropper (cl.bat, melt.bat)
PowerShell T1059.001 BAT (-WindowStyle Hidden -ExecutionPolicy Bypass)
Visual Basic T1059.005 BAT (bypass UAC via VBS)
Ingress Tool Transfer T1105 BAT (curl, bitsadmin, certutil, PowerShell)
BITS Jobs T1197 BAT (bitsadmin fallback)
Certutil T1218.010 BAT (certutil fallback)
Bypass UAC T1548.002 BAT (Shell.Application + runas)
Désactivation Windows Defender T1562.001 BAT (Add-MpPreference + registre, jusqu’à C:\)
Registry Run Keys T1547.001 BAT (AdYQIJLNHV), dropper (Windows Security Service)
Startup Folder T1547.015 BAT (svchost.bat)
Mascarade de processus T1036.005 BAT (svchost.exe/svchost.bat)
Tâche planifiée T1053.005 Dropper (WindowsUpdateVqEWXn, SYSTEM)
Évasion de debugger T1622 Dropper (IsDebuggerPresent)
Découverte de processus T1057 Dropper (CreateToolhelp32Snapshot)
Payload chiffré dans ressource T1027 Dropper (section .rsrc, entropie 7.88)
Vol de credentials navigateurs T1555.003 Stealer (AES-GCM, 3DES, DPAPI)
Vol de cookies T1539 Stealer
Vol de tokens applicatifs T1528 Stealer (Discord)
Collecte d’informations système T1082 Stealer
Capture d’écran T1113 Stealer
Non-Application Layer Protocol T1095 Stealer (WCF/NetTcp)

 

Références