Selon Kaspersky, ses chercheurs ont découvert un spyware commercial jusqu’ici non identifié nommé « Dante », attribué à Memento Labs (anciennement Hacking Team), et l’ont relié aux attaques du groupe APT ForumTroll.
🕵️ « Mem3nt0 mori » : retour de Hacking Team (Memento Labs) via l’espionnage ForumTroll et le spyware Dante
Des chercheurs de Kaspersky ont dévoilé Operation ForumTroll, une campagne d’espionnage active depuis au moins 2022 visant médias, universités, centres de recherche, institutions publiques et financières en Russie et Biélorussie. L’infection débute par des liens de hameçonnage personnalisés (invitations au forum Primakov Readings) : une simple visite via Chrome/Chromium suffisait, grâce à un 0-day d’évasion du bac à sable corrigé comme CVE-2025-2783. Le site malveillant validait la victime (WebGPU + ECDH) et livrait l’étape suivante chiffrée (AES-GCM). Firefox a corrigé un schéma similaire (CVE-2025-2857).
La chaîne d’attaque s’appuie ensuite sur un loader persistant via COM hijacking (détournement du CLSID de twinapi.dll) pour charger le spyware. Kaspersky a observé LeetAgent (C2 en HTTPS avec commandes « leet », keylogger et voleur de documents) et a relié un spyware commercial inconnu à Dante, produit par Memento Labs (ex-Hacking Team). L’attribution repose sur recoupements de code, chemins/fichiers, mécanismes de persistance, données dissimulées (fichiers police) et similitudes avec les derniers échantillons RCS.
Dante emploie VMProtect, anti-debug/anti-sandbox étendus (résolution d’API par hash, anti-hook, vérifs registres et journaux d’événements, contrôle de processus/Drivers) et un orchestrateur chiffré (modules AES-256-CBC liés à la machine). LeetAgent et Dante utilisent Fastly.net pour C2 et le dépôt d’outils (7z, Rclone, SharpChrome, etc.). Les artefacts incluent des pièces jointes LNK/ISO thématiques, une persistance COM, et des IOC (dossiers modules sous %LocalAppData% nommés par chaînes Base64 de 8 octets, hachages fournis par Kaspersky).
Point clé technique : l’exploitation Chrome abusait d’un pseudo-handle Windows (-2) (GetCurrentThread) non filtré dans l’IPC (Mojo/ipcz). Le broker relayait ce pseudo-handle via DuplicateHandle, le transformant en handle de thread du process navigateur, permettant l’exécution de shellcode hors bac à sable. Kaspersky a signalé la faille à Google (corrigée dans Chrome 134.0.6998.177/.178).
🔎 TTPs & IoCs supplémentaires
TTPs (Techniques, Tactiques et Procédures)
-
Initial access / Ingénierie sociale
- Emails de spear-phishing hautement personnalisés (invitations Primakov Readings), liens éphémères.
- Simple visite du lien via Chrome/Chromium déclenche l’infection (aucune interaction supplémentaire).
-
Validation côté attaquant & remise conditionnelle
- WebGPU utilisé pour calculer un SHA-256 (project sha256-gpu de Marco Ciaramella) afin de vérifier un navigateur réel.
- Échange de clés ECDH ; remise du stage suivant chiffré en AES-GCM (dissimulé dans des requêtes vers
bootstrap.bundle.min.jset des fichiers .woff2).
-
Exploitation
- CVE-2025-2783 (Chrome) : évasion du bac à sable via Mojo/ipcz ; abus d’un pseudo-handle Windows
GetCurrentThread(valeur -2) relayé via DuplicateHandle → handle thread du processus navigateur (exécution shellcode). - CVE-2025-2857 (Firefox) : schéma IPC similaire corrigé.
- Déclenchement via hook de
v8_inspector::V8Console::Debuget appelconsole.debug(0x42, shellcode).
- CVE-2025-2783 (Chrome) : évasion du bac à sable via Mojo/ipcz ; abus d’un pseudo-handle Windows
-
Persistance & chargement
- COM hijacking : surcharge du CLSID de
twinapi.dll{AA509086-5Ca9-4C25-8F95-589D3C07B48A} via HKCU pour charger la DLL malveillante (loader). - Déchiffrement du binaire principal via ChaCha20 modifié, liaison matériel (ré-chiffrement avec BIOS UUID), Donut shellcode loader.
- Chargement conditionnel selon le processus (ex.
rdpclip.exe).
- COM hijacking : surcharge du CLSID de
-
Command & Control / Outils
- LeetAgent : C2 HTTPS, commandes en leetspeak (exécution de commandes/processus, injection, gestion de fichiers, keylogger, file-stealer).
- Infrastructure : usage de Fastly.net pour C2 et dépôt d’outils (7z, Rclone, SharpChrome, etc.).
-
Exfiltration / Vol
- Recherche par défaut des documents :
*.doc, *.xls, *.ppt, *.rtf, *.pdf, *.docx, *.xlsx, *.pptx.
- Recherche par défaut des documents :
-
Evasion / Anti-analyse
- VMProtect, OLLVM, anti-hook (résolution d’API par hash + stub syscall), vérif Dr0–Dr7,
KUSER_SHARED_DATA.KdDebuggerEnabled,NtQueryInformationProcess(ProcessDebugFlags, ProcessDebugPort, ProcessDebugObjectHandle, ProcessTlsInformation). - Détection sandbox : bibliothèques « indésirables », timings
sleep()/cpuid, checks système de fichiers. - Inspection des journaux d’événements Windows (recherche d’artefacts d’outillage/sandbox).
- VMProtect, OLLVM, anti-hook (résolution d’API par hash + stub syscall), vérif Dr0–Dr7,
-
Artefacts de phishing (autres campagnes ForumTroll)
- Pièces jointes :
Baltic_Vector_2023.iso,DRIVE.GOOGLE.COM(exécutable),Invitation_Russia-Belarus_strong_partnership_2024.lnk,SCAN_XXXX_<DATE>.pdf.lnk,<DATE>_winscan_to_pdf.pdf.lnk,Rostelecom.pdf.lnk, etc.
- Pièces jointes :
IoCs (Indicateurs de compromission)
Signatures Kaspersky
Exploit.Win32.Generic/Exploit.Win64.AgentTrojan.Win64.Agent/Trojan.Win64.Convagent.genHEUR:Trojan.Script.GenericPDM:Exploit.Win32.Generic/PDM:Trojan.Win32.GenericUDS:DangerousObject.Multi.Generic
Empreintes (hashes)
- Loader
7d3a30dbf4fd3edaf4dde35ccb5cf9263650c1ac97bd5674e1e3bfa9b26008644edacfed2e39800df1cafbebfa22b437744d80f1b38111b471fa3eb42f2214a5ac7e1f13
- LeetAgent
33bb0678af6011481845d7ce9643cedc8390e2ebdd0db5d1a950b2c9984a5f429805d48c388a8af43039f5f16a0673a6e342fa6ae2402e63ba7569d20d9ba4894dc0ba59
- Dante
35869e8760928407d2789c7f115b7f83c25275228c6da54cf578fa72c9f49697e530969407d272b607f082305ce7b1987bfa17dc967ab45c8cd89699bcdced34ea94e126
Clé de persistance / COM détourné
- CLSID ciblé :
twinapi.dll{AA509086-5Ca9-4C25-8F95-589D3C07B48A}
Schéma des dossiers/modules (Dante)
- Dossier de modules dans
%LocalAppData%: nom = chaîne Base64 (8 octets). - Contenu : fichiers sans extension dont les noms sont aussi des chaînes Base64 (8 octets) ; un fichier porte le même nom que le dossier.
- Modules chiffrés en AES-256-CBC (IV = 16 premiers octets du fichier ; clé liée à la machine =
SHA-256(CPU_ID || Windows_Product_ID)). - Chemins dérivés d’un GUID encodé Base64 (identifiant d’infection).
C2 / Hébergement d’outils
- Domaine/infra : Fastly.net (utilisé pour C2 et la livraison d’outils).
Processus ciblés (chargement conditionnel)
- Exemple observé :
rdpclip.exe
Remédiations express
- Appliquer les correctifs CVE-2025-2783 (Chrome 134.0.6998.177/.178) et CVE-2025-2857 (Firefox).
- Surveiller les clés COM (HKCU/HKLM) et la présence du CLSID visé.
- Chasser les dossiers Base64 (8 octets) sous
%LocalAppData%et fichiers associés.- Détecter connexions sortantes vers Fastly.net liées à hôtes non approuvés / modèles anormaux.
- Bloquer/détecter exécution de Donut, Rclone, SharpChrome, etc.
- Activer télémétrie, journalisation et règles EDR pour COM hijacking, DLL sideloading, et IPC anormale.
Source : Kaspersky Securelist – “Mem3nt0 mori – The Hacking Team is back!”, 24 oct. 2025.
Il s’agit d’une publication de recherche visant à annoncer une découverte et à signaler un lien avec des opérations APT.
🔗 Source originale : https://securelist.com/forumtroll-apt-hacking-team-dante-spyware/117851/