La campagne DarkBlinders cible les victimes avec des tactiques d’espionnage avancées
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
DarkBlinders est une campagne active de cyberespionnage ciblant les organisations gouvernementales et diplomatiques en Israël et dans la région du Kurdistan en Irak. L’acteur de la menace s’appuie sur des leurres de phishing sophistiqués, y compris de fausses applications de visioconférence et des répliques de services de stockage cloud, pour déployer des malwares personnalisés. L’opération utilise également des dépôts GitHub pour le commandement et le contrôle (C2) et utilise une activation sélective pour son cheval de Troie de deuxième étape.
Enquête
Dream Research Labs a mené une analyse approfondie de la campagne DarkBlinders et a découvert une chaîne d’infection en plusieurs étapes impliquant une application leurre appelée StarkMeet. Les chercheurs ont rétro-ingéniéré le malware et ont obtenu un accès en lecture seule à l’infrastructure C2 de l’acteur de la menace basée sur GitHub. Cette visibilité leur a permis d’identifier les tâches des victimes et d’observer l’exfiltration de plus de 1 Go de données depuis un environnement cloud gouvernemental.
Atténuation
Les organisations devraient appliquer des contrôles stricts sur les installations de logiciels non vérifiées et surveiller les connexions sortantes inhabituelles vers des services partagés tels que GitHub depuis des systèmes non-développeurs. Il est également recommandé d’augmenter la vigilance sur les liens de partage de stockage cloud et les pièces jointes d’e-mails suspects. La surveillance de l’exécution non autorisée de PowerShell via AppDomainManager ou le chargement en mémoire peut également aider à identifier une activité associée à cette technique de chargeur.
Réponse
Lorsqu’une activité DarkBlinders est détectée, isolez les hôtes affectés pour stopper l’exfiltration de données ultérieure et conservez la mémoire pour l’examen forensic des charges utiles en mémoire. Révisez les jetons d’accès personnels GitHub et les journaux d’accès aux dépôts si une activité suspecte implique l’environnement de développement de l’organisation. Réinitialisez les identifiants pour tous les comptes qui pourraient avoir été exposés par l’infrastructure de phishing identifiée.
Flux d’attaque
Détections
Exécution de processus système depuis des chemins atypiques (via process_creation)
Processus suspect utilisant une URL dans la ligne de commande (via cmdline)
Utilisation suspecte de CURL (via cmdline)
Téléchargement possible de fichier GitHub initié par un processus inhabituel (via network_connection)
Fichiers suspects dans le profil utilisateur public (via file_event)
Abus possible de domaine de développement Cloudflare (via dns)
Commande et contrôle suspect par demande DNS de domaine de premier niveau (TLD) inhabituel (via dns)
IOC (HashSha256) pour détecter : DarkBlinders : À l’intérieur d’une campagne d’espionnage active Partie 2
IOC (HashSha256) pour détecter : DarkBlinders : À l’intérieur d’une campagne d’espionnage active Partie 1
IOC (HashMd5) pour détecter : DarkBlinders : À l’intérieur d’une campagne d’espionnage active
IOC (SourceIP) pour détecter : DarkBlinders : À l’intérieur d’une campagne d’espionnage active
IOC (DestinationIP) pour détecter : DarkBlinders : À l’intérieur d’une campagne d’espionnage active
Activité C2 DarkBlinders via GitHub et Cloudflare Workers [Connexion réseau Windows]
Détection des composants de la campagne DarkBlinders [Création de processus Windows]
Exécution de simulation
-
Narrative et commandes de l’attaque : L’adversaire vise à établir une persistance et un accès distant en utilisant le kit d’outils DarkBlinders. Après avoir obtenu un accès initial, l’attaquant déploie une application leurre nommée
StarkMeet.exe. Pour échapper à la détection, le malware de l’attaquant exécute une commande shell pour télécharger d’autres charges utiles. Dans cette simulation, nous créerons manuellement un leurreStarkMeet.exeet le déclencherons pour exécutercmd.exe, ce qui correspond à la logique de la règle :(StarkMeet.exe) ET (cmd). -
Script de test de régression :
# Script de simulation : Déclencheur de composant DarkBlinders # 1. Créez un fichier leurre pour représenter le composant DarkBlinders $dummyPath = "$env:TEMPStarkMeet.exe" New-Item -Path $dummyPath -ItemType File -Force # 2. Utilisez une petite charge utile pour que l''exécutable'' exécute effectivement une commande # Pour les besoins de la simulation, nous utiliserons un wrapper PowerShell pour lancer le processus ''malveillant'' # qui imite le comportement du composant appelant cmd.exe. Write-Host "[+] Simulation de l'exécution du composant DarkBlinders..." # Nous utilisons Start-Process pour simuler StarkMeet.exe engendrant cmd.exe # Remarque : Dans un scénario réel, le binaire lui-même effectuerait l'engendrement. # Pour déclencher la logique spécifique 'Image' de la règle Sigma, nous devons renommer un processus ou # simuler l'exécution de ce nom de fichier spécifique. # Parce que nous ne pouvons pas facilement compiler un binaire réel ici, nous simulons l'évènement de création de processus # que Sysmon verrait lorsque StarkMeet.exe exécute cmd.exe. Start-Process -FilePath "$env:TEMPStarkMeet.exe" -ArgumentList "cmd.exe /c echo 'Déclenchement de la détection'" -ErrorAction SilentlyContinue # Comme nous ne pouvons pas vraiment ''exécuter'' un fichier non-binaire, nous utilisons cette commande pour créer # le modèle de télémétrie exact via une création de processus simulée si possible, # ou simplement reconnaître que pour que la règle se déclenche, le fichier doit exister. # APPROCHE RÉALISTE POUR LE TEST : # Nous créerons un petit exécutable ou utiliserons un moyen connu pour nommer un processus. # Pour ce script, nous supposons que l'environnement nous permet de renommer un outil système en StarkMeet.exe Copy-Item "C:WindowsSystem32cmd.exe" -Destination "$env:TEMPStarkMeet.exe" Start-Process -FilePath "$env:TEMPStarkMeet.exe" -ArgumentList "/c echo DétectionDéclenchée" Write-Host "[+] Commande de simulation envoyée. Vérifiez SIEM pour StarkMeet.exe + cmd/powershell." -
Commandes de nettoyage :
# Nettoyer les artefacts de simulation Remove-Item -Path "$env:TEMPStarkMeet.exe" -Force -ErrorAction SilentlyContinue Write-Host "[+] Nettoyage complet."