Les logiciels malveillants voleurs d'informations constituent une menace croissante, les attaquants perfectionnant sans cesse leurs techniques pour échapper à la détection. Parmi ces menaces, SnakeKeylogger s'est imposé comme l'un des logiciels malveillants voleurs d'identifiants les plus actifs, ciblant aussi bien les particuliers que les entreprises.
Connu pour sa chaîne d'infection en plusieurs étapes et son exécution furtive en mémoire , SnakeKeylogger est conçu pour collecter des données sensibles tout en restant indétectable.
Récemment, à Seqrite Dans nos laboratoires, nous avons observé une campagne malveillante intéressante qui déployait SnakeKeylogger comme charge utile finale sur des systèmes compromis.
Vecteur d'infection :
Le vecteur d'infection initial est un courriel indésirable malveillant contenant un fichier .img (fichier image disque) en pièce jointe. Une fois ce fichier .img ouvert, un lecteur virtuel est créé, permettant d'accéder aux données qu'il contient. Le fichier .img renferme un fichier exécutable (étape 1), se faisant passer pour un document PDF. Son icône et son nom sont soigneusement choisis pour ressembler à ceux d'un document PDF important, augmentant ainsi la probabilité que le destinataire l'ouvre.
Chaîne d'attaque :

Snake Keylogger utilise une approche systématique pour collecter les identifiants et autres données sensibles. Voici quelques-unes de ces approches :
- Téléchargement et décryptage des charges utiles codées, assurant une exécution furtive.
- Chargement de DLL obscurcies directement dans la mémoire, évitant la détection basée sur le disque.
- Injection de code malveillant dans des processus authentiques, en particulier des processus liés à .Net Framework.
- Vérification du profil Outlook par défaut pour extraire les informations d'identification de courrier électronique stockées.
- Collecte des données de connexion à partir de plusieurs navigateurs et clients de messagerie, voler les mots de passe enregistrés.
- Extraction des informations d'identification FTP stockées à partir de FileZilla, qui peut être utilisé pour une exploitation ultérieure.
Analyse technique –
Étape 1 (téléchargeur et chargeur) :
Ce fichier est un exécutable compilé .Net x64 bits avec une taille de fichier d'environ 10 Ko.
L'étape 1 agit comme un téléchargeur et un chargeur. Lors de son exécution, elle tente de se connecter à un serveur distant et de récupérer des fichiers multimédias.

À première vue, l'URL semble récupérer un simple fichier multimédia (*.mp3) sur le serveur. Cependant, un examen plus approfondi révèle qu'il ne s'agit pas d'un fichier multimédia, mais plutôt d'une charge utile codée déguisée.
La charge utile est récupérée sous forme de flux de réponse et non de fichier sur disque. Elle est stockée sous forme de tableau d'octets dans la variable « array ».
Le serveur Apache est utilisé à des fins de distribution de logiciels malveillants
Après avoir examiné l'URL plus en détail, nous avons découvert que le serveur Apache 2.4.58 (Windows) était utilisé abusivement pour exécuter une campagne malveillante. Les attaquants maintiennent et mettent à jour activement des charges utiles malveillantes chiffrées hébergées à l'adresse hxxp://103.72.56.30/PHANTOM/.

Comme on peut le constater, les attaquants téléchargent et font tourner régulièrement des fichiers dans le répertoire /PHANTOM/. Cette tactique [TA0042] est couramment utilisée dans les opérations de Malware-as-a-Service (MaaS) ou dans les campagnes de phishing et de distribution de logiciels malveillants, permettant aux attaquants de mettre à jour leurs charges utiles tout en maintenant une infrastructure stable [T1608].
Pour revenir à notre analyse de l’étape 1, une fois le flux récupéré, une routine de décryptage est suivie pour décoder la charge utile.

La charge utile récupérée (tableau) est décodée en soustrayant 3 à chaque octet, et les résultats sont stockés dans la variable de tableau « array2 ». Nous constatons que la charge utile décodée possède un en-tête de fichier PE. Nous avons extrait le flux décodé, c'est-à-dire « array2 », et commencé à l'examiner. Nous avons découvert qu'il s'agissait d'une DLL Stage2, chargée dynamiquement en mémoire.

Étape 2 ( Xspilbxpui.dll )
En analysant le fichier avec l'outil DiE (Detect it Easy), nous constatons qu'il s'agit d'une DLL 32 bits compilée avec .NET. Elle est hautement obscurcie, protégée et chiffrée afin d'empêcher toute rétro-ingénierie, ce qui rend difficile la révélation de ses véritables fonctionnalités et de son flux d'exécution.

Ce qui est intéressant dans cet échantillon, c'est l'utilisation de délégués ainsi qu'une forte obfuscation et une génération de code intermédiaire pour contourner la surveillance de l'API.

À ce stade de la chaîne d'infection, le malware utilise le « process hollowing » pour exécuter furtivement sa charge utile en ciblant InstallUtil.exe. « InstallUtil.exe » est un utilitaire Windows légitime permettant d'installer et de désinstaller des ressources serveur. Le « process hollowing » est une technique sophistiquée qui consiste à créer un nouveau processus suspendu, à démapper sa zone mémoire légitime et à écrire du code malveillant dans l'espace vide avant la reprise du processus, exécutant ainsi la charge utile de l'attaquant.
La charge utile injectée est une variante de SnakeKeylogger essayant de voler les données système ainsi que les détails de la connexion WIFI.


Le processus InstallUtil.exe injecté présente un comportement cohérent avec un logiciel malveillant de collecte d'informations d'identification, ciblant une large gamme d'applications qui stockent des données utilisateur sensibles.

SnakeKeylogger accède à un emplacement de registre critique {9375CFF0413111d3B88A00104B2A6676} où Microsoft Outlook 2013 et Outlook 2016+ stockent les configurations de profil utilisateur. Ces configurations incluent les informations de compte de messagerie, les paramètres du serveur de messagerie et les identifiants potentiellement chiffrés. Les comptes de messagerie compromis peuvent être exploités pour contourner l'authentification multifacteur (MFA), usurper l'identité de victimes ou lancer d'autres attaques au sein d'une organisation.


Vous trouverez ci-dessous les catégories et la liste des applications ciblées par SnakeKeylogger :
| Navigateurs Web (Chromium et autres variantes) | |||
| Google Chrome | Navigateur Xpom | Navigateur Coowon | Navigateur SuperBird |
| Microsoft Edge | Navigateur 7Star | Navigateur CocCoc | Navigateur BlackHawk |
| Vivaldi | Navigateur Blisk | Navigateur Orbitum | CatalinaGroup Citrio |
| Slimjet | Navigateur Kinza | Navigateur Sputnik | Navigateur de confidentialité Epic |
| Iridium | Navigateur de la flamme | Navigateur Liebao7 | Navigateur sécurisé Avast |
| Chromium | Comodo dragon | Navigateur QIP Surf | Navigateur QQ (Tencent) |
| Navigateur UCB | Brave navigateur | Navigateur Nichrome | MapleStudio ChromePlus |
| 360 Browser | Navigateur Citrio | Opéra / Opéra GX | Navigateur Uran (uCozMedia) |
| Fenrir Inc. Sleipnir5 | |||
Ces applications enregistrent les mots de passe, les cookies et les données de saisie automatique dans le fichier « Données de connexion ». SnakeKeylogger tente d'interroger et de lire ces données sensibles.
| Navigateurs basés sur Mozilla |
| Mozilla Firefox |
| Waterfox |
| SeaMonkey |
| Comodo IceDragon |
| Cyberfox (8pecxstudios) |
| Lune pâle (Moonchild Productions) |
Ces magasins ont enregistré les connexions, les signets, les données de session et l'historique dans « Profils ».
| Clients d'email |
| Thunderbird (Profils) |
| Boîte aux lettres (Profils\) |
Ceux-ci stockent les informations d'identification de messagerie et les configurations de serveur.
| Applications de messagerie instantanée / de communication |
| Pidgin (.purple/accounts.xml) |
Ces informations d'identification de chat sont stockées dans des fichiers de configuration.
| Clients FTP |
| Filezilla |
Tente d'accéder à la liste des serveurs FTP récemment consultés et aux noms d'utilisateur et mots de passe stockés présents dans le fichier « recentservers.xml »
Hachages de fichiers (MD5) :
851A5FFAC3EE2DA08557108239F90FAB
FD7634082A916C3BD8C94C8493FC83E2
9AD19A4E2D41E214D7BF04F74151DDBD
07B21AAE60698970EBDC2E854B3ACFED
Vous trouverez ci-dessous les tactiques, techniques et procédures (TTP) d'attaque MITRE contre SnakeKeylogger :
| Tactique | Techniques/ Sous-technique |
Procédure |
| Accès initial (TA0001) | T1566.001 | Attachement de spearphishing |
| Exécution (TA0002) | T1204.002 | Exécution de fichiers malveillants |
| Évasion de défense (TA0005) | T1140 | Désobfusquer/décoder des fichiers ou des informations. |
| T1027 | Fichiers ou informations obscurcis. | |
| T1218.004 | Exécution du proxy binaire système : InstallUtil. | |
| T1202 | Exécution de commandes indirectes. | |
| Accès aux informations d'identification (TA0006) | T1555 | Informations d'identification des magasins de mots de passe. |
| -T1555.003 | Informations d'identification des navigateurs Web. | |
| -T1555.004 | Informations d'identification des clients de messagerie. | |
| -T1555.005 | Informations d'identification des gestionnaires de mots de passe. | |
| Découverte (TA0007) | T1083 | Découverte de fichiers et de répertoires. |
| T1012 | Registre de requêtes. | |
| Collecte (TA0009) | T1114.002 | Collecte d'e-mails via l'application client. |
| Commandement et contrôle (TA0011) | T1071.001 | Protocole de couche application : protocoles Web. |
| T1105 | Transfert d'outils d'entrée. | |
| Développement des ressources (TA0042) | T1608.001 | Fonctionnalités d'étape : télécharger des logiciels malveillants |
En conclusion :
La campagne SnakeKeylogger met en scène une chaîne d'attaque hautement structurée, commençant par des spams qui envoient des pièces jointes malveillantes à des utilisateurs peu méfiants. Les attaquants maintiennent une infrastructure stable pour héberger des logiciels malveillants chiffrés, leur permettant ainsi de diffuser et de mettre à jour leurs charges utiles en toute transparence. L'infection progresse en plusieurs étapes, utilisant des techniques telles que la tromperie de format de fichier, le vidage de processus et l'exécution de charges utiles chiffrées pour échapper à la détection.
L’un des principaux objectifs du logiciel malveillant est de collecter des données sensibles, notamment les informations d’identification du profil Outlook, les configurations de messagerie et d’autres détails d’authentification stockés, qui peuvent être exploités pour compromettre la messagerie professionnelle (BEC), commettre d’autres intrusions ou être vendus sur des marchés clandestins.
Auteurs:
Prashil Moon
Rumana Siddiqui



