
Analisador de banco de dados NTDS do Active Directory que exporta registros para JSON, suporta filtragem de objetos e descriptografa colunas criptografadas usando a hive SYSTEM ou bootkey.
Ntdissector é uma ferramenta para analisar registros de um banco de dados NTDS. Os registros são exportados em formato JSON e podem ser filtrados por classe de objeto.
Ao fornecer o hive SYSTEM ou a bootkey correta em formato hexadecimal, as camadas de criptografia serão removidas das colunas corretas.
Mais informações nos seguintes posts do blog :
$ python3 -m pip install [--user] ./ntdissector
$ ntdissector -h
usage: ntdissector [-h] [-system SYSTEM] -ntds NTDS [-bootKey BOOTKEY] [-outputdir OUTPUTDIR] [-cachedir CACHEDIR] [-f FILTER] [-filters] [-limit LIMIT] [-cn] [-debug] [-verbose]
[-silent] [-ts] [-w WORKERS] [-nocache] [-dryRun]
NTDS Dissector
optional arguments:
-h, --help show this help message and exit
-V, --version Display version info
Files:
-system SYSTEM SYSTEM hive to parse
-ntds NTDS NTDS file to parse
-bootKey BOOTKEY Force bootkey (skips the SYSTEM hive parsing)
-outputdir OUTPUTDIR Base output directory
(Default: /home/mehdie/.ntdissector/out/)
-cachedir CACHEDIR Base cache directory
(Default: /home/mehdie/.ntdissector/.cache/)
Filter options:
-f FILTER, --filter FILTER
Filter object classes, 'all' to dump everything.
Use -filters to get a list of available object classes
Default: [user, secret, group, domainDNS].
-filters Print all classes available for filtering
-limit LIMIT Dump a specific number of objects then stop
Display options:
-cn Toggle CN naming output (Default: LDAP naming)
-debug Turn DEBUG output ON
-verbose Turn INFO output ON
-silent Silent
-ts Adds a timestamp to every logging output
-keepDel Keeps deleted records
Miscellaneous:
-w WORKERS, -workers WORKERS
Number of workers (default: 5)
-nocache Disable cache
-dryRun Launch in dry run mode, ignores cache files
Examples:
> Dump users, groups and domain backup keys
$ ntdissector -ntds NTDS.dit -system SYSTEM -outputdir /tmp/ntdissector/ -ts -f user,group,secret
> Dump all records from the database
$ ntdissector -ntds NTDS.dit -system SYSTEM -outputdir /tmp/ntdissector/ -ts -f all
> Dump user objects and include deleted records
$ ntdissector -ntds NTDS.dit -system SYSTEM -outputdir /tmp/ntdissector/ -ts -f user -keepDel
> List object classes available to filter records
$ ntdissector -ntds NTDS.dit -filters
Na primeira execução, a ferramenta constrói automaticamente um esquema de classes de objeto e atributos. Ambos os esquemas ficam armazenados em cache localmente para pular essa etapa na próxima execução.
Diretórios padrão:
~/.ntdissector/.cache/[hash]~/.ntdissector/out/[hash]/[object-class-name].json