
Analyse approfondie en rétro-ingénierie de Lumma Stealer, un voleur d’informations utilisant le process hollowing, les appels à l’API Native et la communication C2. Comprend l’extraction de la charge utile, le détournement du presse-papiers, l’enregistrement des frappes clavier et l’identification du domaine C2.
L'analyse mémoire de setup.exe (le dropper) avec Process Hacker révèle que Lumma Stealer cible les paramètres de confidentialité, installe des pilotes et gère la mémoire.
Privacy Camera – Tente d'accéder aux paramètres de confidentialité de la caméra ou de les désactiver.Privacy Microphone – Tente d'accéder aux paramètres de confidentialité du microphone ou de les désactiver.PreinstallDriver – Indique l'installation d'un pilote pour la persistance ou l'évasion.MapMemoryB0000 – Opération de mappage mémoire (probablement pour l'injection).PreinstallDriver suggère un accès au niveau du noyau.MapMemoryB0000 indique une manipulation de la mémoire pour l'injection.
Vue Process Hacker montrant les chaînes de setup.exe avec Privacy Camera, Privacy Microphone, PreinstallDriver et MapMemoryB0000.
L'analyse mémoire de setup.exe (le dropper) avec Process Hacker révèle une liste de domaines probablement utilisés pour la communication C2.
zhtytomyr.ua – Domaine C2 potentiel.pvt.k12.ma.us – Domaine C2 potentiel.adobeaemcloud.com – Domaine à l'apparence légitime (détourné pour le C2).adobeaemcloud.net – Domaine à l'apparence légitime (détourné pour le C2).us-east-1.amazonaws.com – Domaine AWS (détourné pour l'hébergement).elasticbeanstalk.com – AWS Elastic Beanstalk (détourné pour l'hébergement).alwaysdata.net – Fournisseur d'hébergement (détourné pour le C2).altervista.org – Fournisseur d'hébergement (détourné pour le C2).amazonaws.com et elasticbeanstalk.com sont utilisés pour échapper à la détection.
Vue Process Hacker montrant les chaînes de setup.exe avec des domaines de type C2.
L'analyse Binary Ninja du fichier .bin extrait des chaînes liées à ALPC dans dllhost.exe révèle une adresse C2 potentielle : Vagrancy.virus.cc.
Vagrancy.virus.cc – Serveur C2 potentiel..bin de dllhost.exe (chaînes ALPC).NtConnectPort (communication inter-processus).
Vue Binary Ninja montrant Vagrancy.virus.cc extrait des données .bin liées à ALPC.
L'analyse mémoire du processus injecté dllhost.exe avec Process Hacker révèle que Lumma Stealer utilise des techniques de Process Hollowing avec des appels aux API natives.
NtCreateThreadEx – Crée un thread dans un processus distant (injection).NtWriteVirtualMemory – Écrit des données dans la mémoire d'un autre processus.NtTerminateProcess – Termine des processus (ex. : outils de sécurité).NtShutdownSystem – Arrête ou redémarre le système.NtSetInformationProcess – Modifie les informations d'un processus (évasion).NtAdjustPrivilegesToken – Ajuste les privilèges du jeton (élévation).NtSystemDebugControl – Effectue des opérations de débogage système.SetClipboardData – Manipule les données du presse-papiers.dllhost.exe.NtAdjustPrivilegesToken permet d'obtenir un accès supérieur.
Vue Process Hacker montrant les chaînes de dllhost.exe avec les API natives (NtCreateThreadEx, NtWriteVirtualMemory, etc.).
L'analyse Binary Ninja du fichier .bin extrait de dllhost.exe révèle que Lumma Stealer dispose de capacités de détournement du presse-papiers et de keylogging.
SetClipboardData – Écrit des données dans le presse-papiers (détournement).NtUserGetClipboardData – Lit les données du presse-papiers.NtUserGetKeyState – Obtient l'état du clavier (keylogging).NtUserGetAsyncKeyState – Obtient l'état asynchrone des touches (keylogging).NtUserPostThreadMessage – Envoie des messages de thread (communication).NtUserBlockInput – Bloque la saisie utilisateur (évasion).NtUserSetWindowsHookEx – Définit des hooks Windows (keylogging).NtUserMoveWindow – Déplace des fenêtres (manipulation de l'interface).NtUserBlockInput peut geler la saisie de l'utilisateur.NtUserSetWindowsHookEx peut définir des hooks globaux.
Vue Binary Ninja montrant SetClipboardData, NtUserGetClipboardData et les fonctions de keylogging.
L'analyse mémoire du processus injecté dllhost.exe avec Process Hacker révèle que Lumma Stealer utilise ALPC, la gestion des sections et le chargement de pilotes pour la communication et la persistance.
NtAlpcSendWaitReceivePort – Communication ALPC (communication inter-processus).NtConnectPort – Se connecte à un port (probablement C2 ou système).NtCreateSection – Crée une section mémoire (pour l'injection de code).NtOpenSection – Ouvre une section mémoire existante.NtLoadDriver – Charge un pilote noyau (accès système profond).NtCreateThread – Crée un thread (pour l'exécution de la charge utile).NtCreateEvent – Crée un objet événement (synchronisation).NtCreateMutant – Crée un mutex (pour éviter une exécution en double).NtCreateSection et NtOpenSection sont utilisés pour l'injection.NtLoadDriver fournit un accès système profond.
Vue Process Hacker montrant les chaînes de dllhost.exe avec NtAlpcSendWaitReceivePort, NtCreateSection et NtLoadDriver.
Cette analyse a mis en évidence Lumma Stealer, un voleur d'informations sophistiqué qui utilise une chaîne d'infection en plusieurs étapes impliquant un dropper (setup.exe) et une injection de processus dans dllhost.exe.
setup.exe) : Contient des chaînes liées à la confidentialité (Privacy Camera, Privacy Microphone), à l'installation de pilotes (PreinstallDriver) et des domaines C2 candidats (ex. : zhtytomyr.ua, adobeaemcloud.com).dllhost.exe) : Utilise le Process Hollowing avec des API natives (NtCreateThreadEx, NtWriteVirtualMemory).NtAlpcSendWaitReceivePort), la gestion des sections (NtCreateSection) et le chargement de pilotes (NtLoadDriver).zhtytomyr.ua, adobeaemcloud.com, Vagrancy.virus.cc.NtCreateThreadEx et NtWriteVirtualMemory dans dllhost.exe.NtAlpcSendWaitReceivePort et NtLoadDriver.SetClipboardData, NtUserGetKeyState).L'échantillon Lumma Stealer analysé est disponible sur MalwareBazaar pour ceux qui souhaitent mener leur propre analyse :
🔗 Échantillon Lumma Stealer sur MalwareBazaar
Outils utilisés : Process Hacker, Binary Ninja, x64dbg
SetClipboardDataNtUserGetKeyStateVagrancy.virus.cc extraite des données .bin liées à ALPC.