CyberAct
Publications/#contrôleur de domaine
Tag

Contrôleur de domaine : cibles AD en pentest

Comprendre contrôleur de domaine

Définition

Le contrôleur de domaine est le serveur central d'une infrastructure Active Directory. Il authentifie les utilisateurs, applique les stratégies de groupe (GPO) et stocke la base de données NTDS.dit contenant tous les comptes du domaine. Tout contrôleur de domaine exécute le service LSASS, gère les tickets Kerberos via le compte KRBTGT et réplique les données d'annuaire entre pairs via DRSUAPI. Sa compromission équivaut à la compromission totale du domaine. En pentest ou Red Team, atteindre un contrôleur de domaine est l'objectif final d'une chaîne d'escalade de privilèges. Les attaques ciblant ce rôle exploitent des protocoles critiques : Kerberos, LDAP, SMB, RPC. La surface d'attaque est large. Un seul contrôleur de domaine compromis permet de persister indéfiniment dans le SI via la forge de tickets Golden Ticket à partir du hash KRBTGT.

Détection (Blue Team / SOC)

La détection d'attaques contre un contrôleur de domaine repose sur l'audit fin des journaux Windows. L'événement 4662 (accès objet AD) avec le GUID de réplication DRSUAPI signale une tentative DCSync. L'événement 4768 (demande TGT) avec un code de chiffrement RC4 (0x17) sur un compte sensible est suspect. L'événement 4769 (demande TGS) avec un ticket pour le compte KRBTGT indique une possible forge. Le SIEM doit corréler les accès LDAP massifs (événement 1644 sur Windows Server) avec des comptes non-administrateurs. Zeek et NetworkMiner permettent d'inspecter le trafic DRSUAPI sur le réseau pour détecter une réplication illégitime. L'outil BloodHound Collector génère des requêtes LDAP volumineuses détectables par leur pattern de requêtes sur msDS-AllowedToActOnBehalfOfOtherIdentity ou AdminSDHolder. Le monitoring de LSASS via des règles Sysmon (EventID 10, accès process) sur le contrôleur de domaine est indispensable pour détecter un dump de credentials.

Exploitation & contre-mesures (Red Team)

En Red Team, la compromission d'un contrôleur de domaine suit plusieurs chemins classiques. DCSync, via Mimikatz (lsadump::dcsync), exploite les droits de réplication DS-Replication-Get-Changes-All pour extraire tous les hashes sans toucher LSASS. L'attaque ZeroLogon (CVE-2020-1472) permettait de réinitialiser le mot de passe machine d'un contrôleur de domaine via Netlogon sans authentification. La délégation Kerberos non contrainte expose le TGT des machines se connectant au contrôleur de domaine. Pass-the-Hash et Pass-the-Ticket contre les services SMB et LDAP restent efficaces. Pour durcir un contrôleur de domaine : appliquer la ségrégation des niveaux d'administration (Tier 0), activer Protected Users sur tous les comptes privilégiés, désactiver RC4 dans Kerberos, activer Credential Guard, et surveiller les membres du groupe Domain Admins via des alertes en temps réel. Le patch de ZeroLogon et le durcissement de DRSUAPI via la restriction des ACL d'annuaire sont prioritaires. Impacket (secretsdump.py) et CrackMapExec sont les outils Red Team les plus utilisés pour cibler ce rôle.

Articles sur contrôleur de domaine

MenacesActive Directory : quand le contrôleur de domaine devient une porte ouverte

Un contrôleur de domaine mal configuré suffit à exposer tout un SI. LLMNR, SMB signing, versions obsolètes : le tour des vecteurs d'attaque les plus exploités.

21 juin 20265 min de lecture
Red TeamContrôleur de domaine : la cible prioritaire des attaquants

Le DC est le joyau de la couronne Active Directory. Voici comment les Red Teams l'attaquent — et comment le défendre efficacement.

21 juin 20264 min de lecture