Auteurs: Jozsef Gegeny, Ilia Dafchev
Résumé
- L'Acronis Threat Research Unit (TRU) a découvert une nouvelle campagne de diffusion de malwares impliquant Leet Stealer, RMC Stealer (une version modifiée de Leet Stealer) et Sniffer Stealer.
- Ces campagnes tirent profit de techniques d'ingénierie sociale, de l'engouement pour les jeux vidéo et usurpent des marques pour inciter les victimes à utiliser le programme d'installation de malwares déguisés en jeux indépendants tels que Baruda Quest, Warstorm Fire et Dire Talon.
- Ces faux jeux sont promus via des sites web frauduleux et de fausses chaînes YouTube, et sont principalement distribués via Discord. Nous avons utilisé l'outil open source urlscan.io pour récupérer des captures d'écran de faux sites web qui n'étaient plus accessibles au moment de l'enquête. Une fois installés, ils déploient des infostealers capables de collecter des données de navigateur, des identifiants et des jetons Discord.
- Les conséquences peuvent être graves pour l'individu. Les cybercriminels peuvent usurper l'identité de la victime pour propager des malwares, arnaquer d'autres personnes ou même exiger une rançon avant de restituer l'accessibilité (extorsion). D'autres données sensibles peuvent également être compromises, telles que des identifiants de navigateur, des informations de paiement, des messages privés et des portefeuilles de crypto-monnaie. Les victimes subissent souvent la perte de leur compte, des dommages financiers et une détresse émotionnelle.
- Nous présentons également une analyse technique détaillée de RMC Stealer, facilitée par une erreur opérationnelle du cybercriminel qui a laissé le code source d'origine non obfusqué dans le packaging du malware.
Introduction
Alors que les menaces liées aux malwares ne cessent d'évoluer, une tendance notable se dessine : un nombre croissant de programmes malveillants sont distribués via Discord, en particulier ceux conçus avec le framework Electron.
Pour ceux qui ne connaissent pas, Discord est une plate-forme de communication gratuite et multiplateforme très prisée des gamers, des développeurs, des communautés et des groupes d'amis. Elle propose des fonctionnalités d'appels vocaux, d'appels vidéo et de discussions au format texte, et est largement utilisée pour partager du contenu en temps réel.
Le framework Electron, peu connu en dehors des cercles de développement, est un outil open source qui permet aux développeurs de créer des applications de bureau multiplateformes en JavaScript, HTML et CSS. Electron combine Node.js pour les fonctionnalités de l'infrastructure principale et Chromium pour le rendu de l'interface utilisateur. On le retrouve dans de nombreuses applications courantes, dont Visual Studio Code, Spotify, Slack, Discord, certaines versions de Skype et Microsoft Teams.
Cet article explore les récentes campagnes de vol de données basées sur le framework Electron, en exposant les techniques et méthodes de distribution observées. Nous allons plus particulièrement examiner des exemples de campagnes impliquant Leet Stealer, RMC Stealer (une version modifiée de Leet Stealer) et Sniffer Stealer.
Notre enquête indique que de nombreux voleurs de données basés sur Electron ont pour origine Fewer Stealer, qui semble être un outil fondateur de cette famille de malwares. La carte de généalogie suivante illustre l'évolution de plusieurs stealers de premier plan, montrant comment les acteurs à l'origine de la menace ont itérativement développé des bases de code antérieures :

Leet Stealer a fait son apparition à la fin de l'année 2024. Le malware a été annoncé sur Telegram en novembre, avec les fonctionnalités suivantes :

Promu comme un service de diffusion de malwares (MaaS), des plans d'abonnement à plusieurs niveaux ont rapidement été proposés : une offre Starter à 30 $ par mois et une offre Advanced plus riche en fonctionnalités à 40 $ par mois.
Malgré sa popularité relativement modeste (son canal Telegram ne comptait que 387 abonnés début 2025), Leet Stealer ne doit pas être sous-estimé. Malgré un nombre de followers a priori faible, il est suffisamment important pour justifier une attention particulière, surtout compte tenu de l'activité soutenue de développement et de vente.
En avril 2025, le code source de Leet Stealer a été mis en vente, en offre groupée avec un autre stealer connu sous le nom de Hexon Stealer, ce qui suggère un potentiel tuilage opérationnel ou à une même origine :

Le développeur de Leet Stealer a déclaré accepter les demandes spéciales de création de programmes personnalisés de vol de données. Nous pensons que RMC Stealer est probablement né de cette manière, à savoir une copie modifiée de Leet Stealer, une connexion confirmée par la comparaison du code.

Sur cette image, nous voyons que le développeur a également démarré un nouveau projet appelé Mave Stealer, probablement basé sur le code source de Leet Stealer.
Sniffer Stealer se distingue lui par son caractère atypique. À ce jour, nous n’avons identifié aucune « fourche », aucun clone ou aucune lignée de code en lien avec d’autres familles connues. À ce stade, nous pensons que Sniffer Stealer a pu être développé de manière indépendante, de zéro. Cette analyse pourrait changer à mesure que nous collectons davantage de données.
Détails de la campagne
Dans la section Indicateurs de compromission, nous avons répertorié plusieurs échantillons de voleurs de données collectés au cours des deux derniers mois. Un modèle très clair se dégage des noms des échantillons : la majorité se fait passer pour des programmes d'installation de jeux indépendants, prétendant souvent être associés à Steam ou ayant des noms qui ressemblent à des titres de jeux :

Des jeux comme Catly, Eden et Rooted sont répertoriés sur Steam, mais leurs dates de sortie n'ont pas encore été annoncées. Certains d'entre eux pourraient éventuellement être disponibles via le programme d'accès anticipé de Steam, qui permet aux gamers de tester des jeux avant leur sortie officielle. C'est pourquoi l'idée d'un « programme d'installation bêta » semble crédible et enthousiasmante pour de nombreux gamers, en particulier ceux qui aiment découvrir de nouveaux jeux indépendants. Les cybercriminels en profitent pour créer des faux programmes d'installation de jeux qui contiennent en réalité des malwares, qu'ils diffusent sur des plates-formes comme Discord, où l'on partage souvent des liens de jeux. Les paragraphes qui suivent présentent une sélection de faux jeux apparus au cours des deux derniers mois.
Faux jeu n° 1 : Baruda Quest
Pour donner plus de crédibilité à ces faux jeux, les cybercriminels n'hésitent pas à créer des sites web dédiés et même des chaînes YouTube où les promouvoir. Un exemple flagrant est Baruda Quest.
Fausse chaîne YouTube : hxxps://www[.]youtube[.]com/watch?v=N3OTRiidWUQ


Le site web proposait des liens de téléchargement pour Windows, Android et macOS. Toutefois, seule la version Windows contenait un malware, une variante de RMC Stealer. Les deux autres liens redirigeaient les utilisateurs vers le jeu virtuel légitime Club Cooee, dont les cybercriminels avaient volé des éléments graphiques et le branding pour donner à Baruda Quest une apparence authentique.
Redirection du bouton Télécharger : hxxps://cdn[.]discordapp[.]com/attachments/1308872370601070710/1353442772497072158/BarudaQuest[.]exe?ex=67e1ab4e&is=67e059ce&hm=63b73c6a74e2e31f6b439fec1c4094a6fd76a894db328effab4ac8ef603e75ad&
Faux jeu n° 2 : Warstorm Fire
Le site web Warstorm Fire était rédigé par défaut en portugais, ce qui laisse penser qu'il provient probablement du Brésil. Les visuels et le branding du jeu ont été directement copiés du jeu légitime Crossfire: Sierra Squad.
Voici une capture d'écran du faux site web tel qu'il apparaissait lorsqu'il était encore activé :

Le bouton Télécharger procède à une redirection :
Lien malveillant n° 1 : hxxps://warstormfire[.]com/download/warstormfire[.]rar Lien malveillant n° 2 : hxxps://warstormfire[.]com/download/WarstormfireSetup[.]rar
Ces fichiers d'installation contenaient une variante de Sniffer Stealer.
Faux jeu n° 3 : Dire Talon
Dans ce cas, les cybercriminels ont pris le jeu original Project Feline qu'ils ont labellisé à leur nom, à savoir Dire Talon.

Lien de téléchargement : hxxps://www[.]dropbox[.]com/scl/fi/eg0bxaplyr87vbt7t46m8/DireTalon_1[.]2[.]8[.]rar?rlkey=6wl2es2khx4x0blyzq9wwxnqj&st=0s3igvro&dl=1
Dans ce cas, le hacker a protégé le fichier téléchargé avec le mot de passe « DT2025 » :

Ce programme d'installation déployait également une variante de Sniffer Stealer.
Faux jeu n° 4 : WarHeirs
Autre jeu dont le nom a été modifié. Le fichier d'origine s'appelle The Braves.

Lien de téléchargement malveillant :
hxxps://cdn[.]discordapp[.]com/attachments/1345333906966183958/1345335616187007017/Warheirs[.]rar?ex=67c42cee&is=67c2db6e&hm=bb404897fbc8b87eda9000e3845083f00713cea43fac17f0922fc2f098347eb4&
Après analyse de plusieurs échantillons de faux jeux, nous avons découvert qu'aucun d'entre eux ne comportait de réel contenu de jeu. Le malware exploite au contraire des techniques d'ingénierie sociale pour inciter les victimes à croire que quelque chose s’est mal passé lors de l’installation ou que leur équipement ne répond pas à la configuration système requise du jeu.
Pour nombre de fausses pages web, la langue par défaut est le portugais, ce qui est raccord avec nos observations des données de télémétrie de VirusTotal. L'essentiel des échantillons provenait du Brésil, suivi de près par les États-Unis, ce qui laisse penser que la campagne s'est rapidement étendue à d'autres langues et d'autres régions :

Bien que la langue portugaise laisse penser que la campagne a pu être lancée au Brésil, la forte présence de soumissions émanant des États-Unis montre que le malware a probablement été distribué plus largement, peut-être via des plates-formes mondiales comme Discord.
Analyse technique
Cette section présente un aperçu technique de la construction de ces échantillons de malware basés sur Electron. Pour ce faire, nous utiliserons un échantillon de la campagne Baruda Quest pour une raison simple : le développeur a accidentellement inclus le code source original et non obfusqué dans le packaging. Cela nous évite de devoir explorer plusieurs couches d'obfuscation afin de comprendre directement le fonctionnement de ces voleurs d'informations.
NSIS
BarudaQuest.exe est un exécutable de 80 Mo, resté indétecté sur VirusTotal pendant plus de deux mois, seuls deux moteurs antivirus sur 71 l'ayant identifié comme malveillant. Ce faible taux de détection est probablement dû à une combinaison de facteurs : la taille importante du fichier, l'utilisation du framework Electron (qui inclut un environnement d'exécution complet) et une obfuscation JavaScript poussée qui complique l'analyse des comportements malveillants.
De plus, l'exécutable est packagé à l'aide du programme d'installation Nullsoft (également connu sous le nom de NSIS) et peut contenir des centaines de fichiers. Heureusement, un seul fichier nous intéresse vraiment : app.asar. Il contient le code JavaScript malveillant. Pour extraire le fichier .asar, nous pouvons utiliser 7-Zip, qui permet d'extraire les fichiers des programmes d'installation NSIS.

Archive Asar
Le fichier app.asar intégré fait environ 8,5 Mo, ce qui est plus raisonnable, mais reste toutefois assez volumineux. Nous allons maintenant voir si nous pouvons aller plus loin. Une archive ASAR commence par un court en-tête binaire de 16 octets, suivi d'un en-tête JSON, puis des fichiers intégrés. À partir de l'en-tête binaire, nous pouvons déterminer la taille de l'en-tête JSON, qui est dans ce cas de 0x5a4ab (369 835 octets), encodé au format little-endian :

Il est possible d'écrire un script personnalisé pour analyser l'archive ASAR en lisant directement l'en-tête JSON, mais il existe une méthode bien plus simple. Le programme d'installation de Node.js vous permet d'utiliser l'utilitaire asar pour extraire l'archive, comme décrit dans la documentation officielle d'Electron, disponible ici. Une fois extraite, l'archive ASAR révèle la structure de fichiers et de répertoires suivante :

Le fichier package.json : spécifie l'emplacement du script principal

Chargeur de bytecode
Lors de l'inspection du répertoire /out/main, nous avons fait une découverte inquiétante : le malware a été compilé en bytecode JavaScript et est exécuté par une machine virtuelle dans le moteur JavaScript V8 :


Si aucune méthode alternative n'est disponible, il est nécessaire de décompiler et d'analyser le code. Heureusement, l'auteur du malware a commis une erreur en laissant le code source d'origine dans l'archive ASAR :

Si cette négligence est regrettable pour le cybercriminel, elle est en revanche très utile aux chercheurs, car elle accélère considérablement le processus d'analyse et leur fait gagner un temps précieux.
Analyse du code du malware
Dans cette section, nous analyserons le fichier rgg_original.js, qui contient une version modifiée de Leet Stealer, baptisée RMC Stealer.
Détection de sandbox
Le malware commence par détecter la présence de sandbox, à partir de listes noires qui ciblent les adresses IP, les noms d'hôtes, les noms d'utilisateur, les GPU, les systèmes d'exploitation et les processus en cours d'exécution :

Pour vérifier les détails du BIOS et du GPU, il utilise le résultat de la commande WMIC :

Il procède également à une vérification finale de la taille de la RAM du système. Si la mémoire disponible est inférieure à 2 Go, la machine est considérée comme un environnement sandbox potentiel :

Lorsqu'il détecte un environnement sandbox, le malware dépose et exécute un script nommé fakeErr_[caractères_aléatoires].vbs, qui affiche un faux message d'erreur, empêchant ainsi l'exécution de l'échantillon dans une machine virtuelle :

Fait intéressant, Sniffer Stealer utilise également des messages d'erreur factices. Cependant, contrairement aux erreurs de détection de sandbox utilisées par Leet / RMC Stealer, ces messages imitent des problèmes de jeux courants. Cette tactique contribue à réduire les soupçons en convaincant la victime que le jeu qu'elle a tenté de lancer est défectueux ou mal installé. Voici des exemples de ces messages d'erreur fabriqués par Sniffer Stealer, que le malware sélectionne au hasard pour l'afficher :

Exfiltration de données du navigateur
Si la machine parvient à passer la détection de sandbox, le malware collecte les données des navigateurs web installés. Le processus de collecte des données cible les cookies, les mots de passe enregistrés et les données de formulaire :

Le malware prend en charge les principaux navigateurs, y compris Chrome, Edge, Brave, Opera, Vivaldi, Yandex et Chromium. Il utilise une technique sophistiquée qui consiste à exécuter le navigateur en mode débogage, ce qui lui permet de se connecter au processus et d'extraire les cookies directement à partir de l'instance en cours de débogage :

Les données volées sont ensuite compressées dans une archive ZIP et chargées initialement sur gofile.io, puis une notification est envoyée au serveur de commande et de contrôle (C2) :

Si le chargement sur gofile.io échoue, le malware tente d'exfiltrer les données via des services alternatifs de partage de fichiers tels que file.io, catbox.moe et tmpfiles.org.
Discord et autres
Le malware cible également Discord et collecte diverses informations du compte de la victime :

Nous pensons qu'il s'agit d'une phase critique du fonctionnement du stealer, car les jetons Discord agissent comme des identifiants d'authentification qui accordent une accessibilité complète au compte de l'utilisateur, sans nécessiter de nom d'utilisateur ou de mot de passe. Avec un jeton valide, un cybercriminel peut accéder aux messages privés, listes d'amis, serveurs et autres informations personnelles sensibles. De plus, le compte compromis peut être exploité pour distribuer des liens malveillants ou des messages de phishing aux contacts de la victime, facilitant ainsi la propagation du malware.
En plus de Discord, de nombreuses autres plates-formes sont ciblées, notamment :
- Microsoft Steam
- Growtopia
- MineCraft
- EpicGames
- Telegram
- BetterDiscord (une version non officielle de Discord)
Installation d'autres malwares
Le malware est également capable de télécharger et d'exécuter d'autres charges actives malveillantes :

Il est intéressant de noter que dans d'autres variantes de Leet Stealer, des commentaires en portugais ou en turc apparaissent au côté des commentaires en anglais. Cela reflète la manière dont le code source a été transmis de main en main, avec des personnes qui l'ont modifié et altéré au passage :


Conclusion
Les programmes de vol de données déguisés en faux jeux et fichiers d'installation montrent comment les campagnes de diffusion de malwares modernes ont pu évoluer au-delà de simples astuces techniques. Ils s'appuient désormais fortement sur l'ingénierie sociale, le branding et des incitations psychologiques pour tromper les utilisateurs. En dissimulant des malwares dans des jeux et en les associant à des sites web et des supports promotionnels factices, les cybercriminels brouillent les pistes entre contenu légitime et tromperie.
Les plates-formes de réseaux sociaux telles que Discord sont très populaires auprès des jeunes friands de technologie, et constituent des canaux de distribution efficaces, en particulier lorsque les cybercriminels exploitent des noms de jeux connus ou des accès anticipés fort attendus.
Détection par Acronis
Cette menace a été détectée et bloquée par Acronis Cyber Protect Cloud :

Indicateurs de compromission
EXEMPLE :