Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

NTDS.dit Active Directory Forensics

forensics

Définition

NTDS.dit est la base de données principale d'Active Directory, stockée sur chaque contrôleur de domaine (DC) Windows dans C:\Windows\NTDS\NTDS.dit. Elle contient tous les objets AD : comptes utilisateurs, ordinateurs, groupes, GPOs, et surtout les hashs de mots de passe de tous les utilisateurs du domaine. Son extraction est l'objectif final de nombreuses attaques APT (Domain Admin = accès NTDS.dit = compromission totale du domaine). Forensiquement, NTDS.dit est à la fois une cible forensique (sa compromission indique une attaque avancée) et une source de preuves (elle documente la structure du domaine et peut révéler des comptes créés par l'attaquant). L'accès à NTDS.dit nécessite Domain Admin ou équivalent, car le fichier est verrouillé par le processus lsass.exe pendant l'exécution du DC. Les méthodes d'extraction de NTDS.dit incluent : DCSync (Mimikatz lsadump::dcsync ou Impacket secretsdump.py --just-dc) qui simule le mécanisme de réplication AD pour extraire les hashs sans accès au fichier NTDS.dit directement, ntdsutil (outil natif Windows : ntdsutil snapshot create → copy ntds.dit depuis le snapshot), et la copie depuis un backup (les backups des DCs contiennent NTDS.dit non verrouillé). La présence de VSS snapshots contenant NTDS.dit sur les DCs permet aussi l'extraction. La détection de l'extraction NTDS.dit repose sur plusieurs indicateurs. DCSync génère des EventIDs spécifiques : EventID 4662 (An operation was performed on an object) avec des permissions de réplication (GetChanges, GetChangesAll) pour des comptes non-DC est hautement suspect. L'accès au fichier NTDS.dit lui-même ou à C:\Windows\NTDS\ par des processus autres que ntdsa.dll/lsass.exe est anormal. Des copies des fichiers NTDS.dit ou SYSTEM hive dans des répertoires temporaires (souvent précédées d'un ntdsutil snapshot) sont des indicateurs d'extraction. L'analyse de NTDS.dit offline permet de récupérer l'historique des mots de passe (password history), les dates de création et modification des comptes, les membres des groupes privilégiés, et l'évolution des permissions dans le domaine.

Fonctionnement

NTDS.dit est une base de données ESE (Extensible Storage Engine, format JET Blue) avec tables: datatable (tous les objets AD), link_table (relations entre objets), sd_table (descripteurs de sécurité). Les hashs de mots de passe sont stockés dans l'attribut unicodePwd chiffré avec une clé dérivée du BOOTKEY (depuis la ruche SYSTEM du DC). Impacket/Mimikatz extraient les hashs en combinant NTDS.dit + SYSTEM hive.

Application DFIR

Forensique NTDS.dit : 1) Détecter DCSync : EventID 4662 avec AccessMask 0x100 (GetChanges) ou 0x40 (GetChangesAll) pour un compte non-DC, 2) Détecter ntdsutil snapshot : EventID 4688 (création de processus ntdsutil.exe avec arguments snapshot), 3) NTDS.dit copié dans /tmp ou appdata : File system scan, Sysmon EventID 11 (FileCreate) sur le répertoire NTDS, 4) Analyser NTDS.dit récupéré : impacket secretsdump.py -ntds ntds.dit -system SYSTEM LOCAL → extract tous les hashs. 5) Comparer les hashs avec les listes de mots de passe craqués pour évaluer la solidité des mots de passe.

Outils

Extraction NTDS : Impacket secretsdump.py (offline et DCSync), Mimikatz (lsadump::dcsync, lsadump::lsa /patch), CrackMapExec (--ntds pour extraction). Analyse ESE : esedbexport (libesedb), NTDSXtract (Python, analyse détaillée NTDS.dit). Détection DCSync : Sigma rules AD Replication, BloodHound (requêtes DCSync rights), Elastic Security (lsass_replication rules). Password cracking : Hashcat -m 1000 (NTLM hashs extraits).

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis