
NTDS.dit ファイルを SQLite 形式に変換する小さなユーティリティです。
このソフトウェアは、CLIユーティリティとして直接使用することも、ライブラリとして使用してNTDS.DITファイルからSQLiteデータベースを取得することもできます。関連するシステムハイブが一緒に提供されている場合、暗号化された部分を復号化できます。
python -m pip install ntdsdotsqlite
ntdsdotsqlite NTDS.DIT --system SYSTEM -o NTDS.sqlite
usage: NTDS.sqlite [-h] [--system SYSTEM] -o OUTFILE NTDS
This tool helps dumping NTDS.DIT file to an SQLite database
positional arguments:
NTDS The NTDS.DIT file
optional arguments:
-h, --help show this help message and exit
--system SYSTEM The SYSTEM hive to decrypt hashes. If not provided, hashes will be encrypted inside the sqlite database.
-o OUTFILE, --outfile OUTFILE
The sqlite database. Example : NTDS.sqlite
SQLモデルは、このリポジトリのsql_model.mdファイルに記載されています。基本的に、すべてのオブジェクトが抽出されるわけではありません(まったく抽出されないものもあります)が、現時点で取得されるのは次のとおりです: ドメインオブジェクト、ユーザーアカウント、マシンアカウント、グループ、組織単位(OU)、コンテナ。これらが最も有用だと考えました。さらに多くのオブジェクトクラスや属性を抽出する必要がある場合は、お気軽にIssueまたはプルリクエストを開いてください!
巨大なNTDSファイルの場合、パフォーマンスがやや低下することがあります。巨大なファイルを扱う際のメモリ枯渇を防ぐため、NTDS全体はメモリに保存されません(NTDSデータベースは数ギガバイトに成長することがあります)。