Présentation de la chaîne d'attaque

L’enquête d’Ontinue décrit une chaîne en quatre étapes, débutant par une page CAPTCHA factice hébergée sur des sites ukrainiens compromis. Un installateur MSI factice, délivré via le mécanisme ClickFix de Cloudflare, déploie le chargeur LunexLoader. Ce chargeur contourne l’UAC grâce à l’objet COM CMSTPLUA, puis active la technique BYOVD (Bring Your Own Vulnerable Driver) avant de télécharger le composant final, le Lunex Stealer (également nommé Psychedelic Stealer).

Exploitation du pilote AMD et contournement des protections

Le vecteur BYOVD repose sur le pilote noyau PDFWKRNL.sys du logiciel AMD Radeon, vulnérable à CVE‑2023‑20598. En chargeant ce pilote, le malware élève ses privilèges au niveau du noyau et utilise un « zeroing » des callbacks du noyau guidé par le PDB, ce qui rend les processus de sécurité aveugles tout en restant actifs. Les tests d’Ontinue montrent que ni HVCI ni la liste de blocage des pilotes vulnérables de Microsoft ne bloquent cette variante, malgré son inclusion dans le projet LOLDrivers depuis mars 2026.

Vol de données et persistance

Une fois les protections neutralisées, le stealer extrait les identifiants de sept navigateurs Chromium (Chrome, Edge, Brave, Yandex, Opera, Opera GX, Vivaldi) ainsi que les portefeuilles de cinq clients de bureau (Bitcoin Core, Litecoin, Exodus, Atomic Wallet, Electrum) et de quatre extensions (MetaMask, MetaMask Legacy, OKX Wallet, SafePal). Les informations sont exfiltrées vers le serveur C2 193.178.159.128 via HTTP. La persistance s’appuie sur une clé de registre Run, une tâche planifiée cachée nommée psychedelicloveUtils et un hôte de messagerie native Chrome (NMH) implémenté par un script PowerShell de 13 200 octets stocké dans la section .rdata. Ce NMH reste actif même après la suppression du binaire principal, les redémarrages du système ou du navigateur.

# Extraits du script PowerShell intégré
list_drives   # énumère les lettres C‑Z
list_dir      # liste le contenu d’un répertoire avec tailles
read_file     # lit un fichier en blocs de 512 KB (max 524 MB)
write         # écrit des données arbitraires
download      # télécharge un fichier depuis le système
run           # exécute un programme

Le NMH injecte également une extension Chrome malveillante en modifiant les Secure Preferences du navigateur, avec des permissions couvrant cookies, historique, signets, onglets, stockage, proxy, scripting, declarativeNetRequest et tous les URL HTTP/HTTPS. Cette extension contrôle entièrement l’activité du navigateur victime.

Analyse de l’évasion des EDR et limites observées

La méthode BYOVD employée par Lunex Stealer se distingue par l’absence de terminaison de processus de sécurité ; les produits EDR restent en cours d’exécution mais ne détectent plus les actions malveillantes. Le « zeroing » des callbacks évite les déclencheurs classiques basés sur les appels système. Cependant, la dépendance à un pilote AMD spécifique limite la portée géographique du vecteur, et la présence du pilote dans la base LOLDrivers indique que les chercheurs peuvent déjà le bloquer manuellement. Enfin, le trafic C2 non chiffré (HTTP) expose la communication à l’interception, offrant un point d’entrée potentiel pour les équipes de défense.