Un Arsenal Commun : Identifier les TTP Communs entre les RAT
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
Un article de Splunk examine comment de nombreux chevaux de Troie d’accès distant et familles de voleurs convergent vers la même base de techniques MITRE ATT&CK. Il met en évidence des comportements répétitifs tels que le transfert d’outil d’entrée, la découverte d’hôte et de réseau, la persistance via le registre et les tâches planifiées, l’évasion de la défense et le vol de données d’identification. En parallèle, il note de petites différences de mise en œuvre qui peuvent encore aider à séparer les familles lors du triage. Cette approche soutient une chasse plus cohérente entre les familles.
Enquête
L’équipe a cartographié environ dix-huit familles de logiciels malveillants sur ATT&CK, a résumé les TTPs qui se chevauchent, et a inclus des fragments de code pratiques couvrant la persistance, la manipulation de jetons et l’utilisation des services web. Les exemples couvrent les requêtes WMI, l’écriture des clés d’exécution, la création de tâches planifiées et les commandes PowerShell qui ajoutent des exclusions à Windows Defender.
Atténuation
Les recommandations donnent la priorité aux détections centrées sur les techniques plutôt qu’aux noms des familles : surveillez l’abus des utilitaires courants (schtasks, reg, WMI), limitez le trafic sortant des services web, et renforcez les contrôles d’accès aux données d’identification. Il est également recommandé de resserrer les politiques d’exclusion de Windows Defender et de déclencher des alertes sur les changements de privilèges de jetons.
Réponse
Lorsque ces techniques sont détectées, isolez le point de terminaison, collectez les artefacts clés (ruche de registre, définitions de tâches planifiées, journaux de ligne de commande), et recherchez les indicateurs de compromission (IOC) connexes dans tout le domaine. Supprimez la persistance, appliquez des blocs basés sur les indicateurs pour les domaines et les hachages connus, et étendez les détections pour couvrir les comportements partagés.
Flux d’attaque
Nous sommes encore en train de mettre à jour cette partie. Inscrivez-vous pour être notifié
Notifier moiDétections
Communication potentielle de recherche d’adresse IP via des domaines (via dns)
Voir
Schtasks pointe vers un répertoire/script/binaire suspect (via cmdline)
Voir
Désactivation des protections de Windows Defender (via registry_event)
Voir
Possible infiltration/exfiltration de données/C2 via services/outils tiers (via proxy)
Voir
Possible infiltration/exfiltration de données/C2 via services/outils tiers (via dns)
Voir
Changements suspects des préférences de Windows Defender (via powershell)
Voir
Points de persistance possibles [ASEPs – Software/NTUSER Hive] (via registry_event)
Voir
Création de tâches planifiées via Schtasks.exe [Création de processus Windows]
Voir
Détecter les clés de registre Run pour la persistance [Événement de registre Windows]
Voir
Exécution de simulation
Prérequis : Le contrôle préliminaire de la télémétrie et des données de base doit avoir été effectué.
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 exactement la télémétrie attendue par la logique de détection.
-
Narratif et commandes d’attaque :
- Reconnaissance : L’attaquant énumère la version de l’OS pour vérifier que la cible est une machine Windows capable d’utiliser les clés d’exécution.
- Préparation de la charge utile : Un exécutable de test inoffensif (
notepad.exe) est choisi pour éviter un impact malveillant réel tout en représentant une charge utile de persistance typique. - Implantation de persistance : En utilisant
reg.exe, l’attaquant écrit une nouvelle valeur de chaîne nomméeProvingMalwaresousHKCUSoftwareMicrosoftWindowsCurrentVersionRun, pointant versC:WindowsSystem32notepad.exe. Cela génère l’EventID 4657 avec le chemin de la clé d’exécution, satisfaisant ainsi la règle de détection. - Vérification : L’attaquant interroge le registre pour confirmer l’existence de la valeur.
-
Script de test de régression :
# ------------------------------------------------- # Preuve – Simulation de persistance de clé de registre # ------------------------------------------------- essayer { # 1. Vérifier que l'OS est Windows if (-not $IsWindows) { throw "Ce script ne peut s'exécuter que sur Windows." } # 2. Définir le chemin de la clé Run et la charge utile malveillante $runKey = "HKCU:SoftwareMicrosoftWindowsCurrentVersionRun" $valueName = "ProvingMalware" $payloadPath = "$env:SystemRootSystem32notepad.exe" # 3. Écrire la clé Run malveillante (cela déclenche l'EventID 4657) New-ItemProperty -Path $runKey -Name $valueName -Value $payloadPath -PropertyType String -Force | Out-Null Write-Host "[+] Clé Run $valueName ajoutée sous $runKey pointant vers $payloadPath" } catch { Write-Error "[!] $($_.Exception.Message)" } -
Commandes de nettoyage :
# Supprimer la valeur de persistance simulée $runKey = "HKCU:SoftwareMicrosoftWindowsCurrentVersionRun" $valueName = "ProvingMalware" if (Test-Path "$runKey") { Remove-ItemProperty -Path $runKey -Name $valueName -ErrorAction SilentlyContinue Write-Host "[+] Nettoyage de la clé Run $valueName" }