Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
DPAT — Инструмент аудита паролей домена для пентестеров | Kitploit
Инструменты/GitHubGitHub/clr2of8/dpat
Взлом паролейАнализ уязвимостейТестирование на Проникновение
GitHubclr2of8/dpat

DPAT

Инструмент аудита паролей домена для пентестеров

Репозиторий
1.1k1668 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Иконка DPAT Domain Password Audit Tool (DPAT)

DPAT — это инструмент безопасности на Python для анализа хэшей паролей, извлечённых из контроллеров домена Active Directory. Он генерирует подробные HTML-отчёты с информацией об использовании паролей, нарушениях политик и выводами о безопасности на основе дампов NTDS и результатов подбора паролей.

Примеры отчётов

Сводка DPAT

Статистика групп

Графики

Возможности

  • Комплексный анализ паролей: анализ распределения длины паролей, повторений и нарушений политик
  • Интерактивные HTML-отчёты: создание подробных, кликабельных HTML-отчётов с возможностью детализации
  • Поддержка истории паролей: анализ данных истории паролей при их наличии
  • Групповой анализ: включение статистики по членству в группах для привилегированных учётных записей
  • Анализ Kerberoastable учётных записей: выявление и анализ взломанных сервисных учётных записей Kerberoast
  • Взлом LM-хэшей: автоматическая попытка взлома NT-хэшей из частично взломанных LM-хэшей
  • Санитизация данных: возможность обезличивания чувствительных данных в отчётах для обмена
  • Поддержка различных форматов ввода: поддержка Hashcat, John the Ripper и других инструментов подбора паролей

Требования

  • Python 3.8 или новее
  • pycryptodome (для поддержки хэшей MD4)

Установка

Базовая установка

Установка основных зависимостей:

root@kitploit:~
pip install -r requirements.txt

Для разработки и тестирования:

root@kitploit:~
pip install -r requirements-dev.txt

Установка вручную

Если вы предпочитаете устанавливать зависимости по отдельности:

root@kitploit:~
pip install pycryptodome

Использование Poetry

root@kitploit:~
poetry install

Быстрый старт

  1. Извлеките данные NTDS из контроллера домена с помощью secretsdump.py
  2. Взломайте пароли с помощью Hashcat, John the Ripper или аналогичных инструментов
  3. Запустите DPAT для генерации аналитического отчёта
root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8

Использование

Основная команда

root@kitploit:~
python dpat.py -n <ntds_file> -c <cracked_file> -p <min_password_length>

Обязательные параметры

  • -n, --ntdsfile: файл NTDS (вывод secretsdump.py)
  • -c, --crackfile: файл с результатами подбора паролей (hashcat.potfile, john.pot и т.д.)
  • -p, --minpasslen: минимальная длина пароля согласно политике домена

Дополнительные параметры

  • -o, --outputfile: имя HTML-файла отчёта (по умолчанию: _DomainPasswordAuditReport.html)
  • -d, --reportdirectory: каталог вывода (по умолчанию: "DPAT Report")
  • -s, --sanitize: обезличивание паролей и хэшей в отчётах
  • -g, --groupsdirectory: каталог с файлами членства в группах
  • -m, --machineaccts: включение учётных записей компьютеров в анализ
  • -k, --krbtgt: включение учётной записи krbtgt в анализ
  • -kz, --kerbfile: файл с Kerberoastable учётными записями
  • -w, --writedb: запись базы данных SQLite на диск для проверки
  • --no-prompt: пропустить приглашение браузера (полезно для автоматизации)
  • -dbg, --debug: включение отладочного вывода

Примеры команд

Базовый анализ:

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8

С анализом групп:

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -g /path/to/groups

Обезличенный отчёт:

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -s

С Kerberoastable учётными записями:

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -kz kerberoastable.txt

Форматы входных файлов

Формат файла NTDS

Файл NTDS должен быть в формате, выдаваемом secretsdump.py:

root@kitploit:~
domain\username:RID:lmhash:nthash:::

Форматы файлов взломанных паролей

Формат Hashcat:

root@kitploit:~
nthash:password
lmhash:password

Формат John the Ripper:

root@kitploit:~
$NT$nthash:password
$LM$lmhash:password

Шестнадцатерично закодированные пароли:

root@kitploit:~
nthash:$HEX[68656c6c6f]

Формат файлов групп

Файлы членства в группах должны содержать по одному имени пользователя в строке:

root@kitploit:~
domain\username

Извлечение данных

Шаг 1: Извлечение данных NTDS

На контроллере домена создайте резервную копию IFM (Install From Media):

root@kitploit:~
ntdsutil "ac in ntds" "ifm" "cr fu c:\temp" q q

Будут созданы:

  • c:\temp\Active Directory\ntds.dit
  • c:\temp\registry\SYSTEM

Шаг 2: Преобразование в формат DPAT

Используйте secretsdump.py для преобразования резервной копии:

root@kitploit:~
secretsdump.py -system registry/SYSTEM -ntds "Active Directory/ntds.dit" LOCAL -outputfile customer

Для истории паролей (если доступна):

root@kitploit:~
secretsdump.py -system registry/SYSTEM -ntds "Active Directory/ntds.dit" LOCAL -outputfile customer -history

Шаг 3: Взлом паролей

Используя Hashcat:

root@kitploit:~
hashcat -m 1000 customer.ntds /path/to/wordlist

Используя John the Ripper:

root@kitploit:~
john --format=NT customer.ntds

Разделы отчёта

DPAT генерирует подробные отчёты, включающие:

  • Статистика паролей: общее количество хэшей, уникальных хэшей, взломанных паролей
  • Нарушения политики паролей: пароли короче минимальной длины по политике
  • Совпадения имени пользователя и пароля: учётные записи, использующие имя пользователя в качестве пароля
  • Анализ LM-хэшей: непустые LM-хэши и статистика их взлома
  • Распределение длины паролей: подробный анализ длины с возможностью детализации
  • Повторное использование паролей: общие пароли для нескольких учётных записей
  • Самые популярные пароли: наиболее часто используемые пароли
  • История паролей: анализ исторических паролей (при наличии)
  • Статистика групп: анализ привилегированных групп (при предоставлении файлов групп)
  • Kerberoastable учётные записи: анализ сервисных учётных записей (при предоставлении)

Пример данных

В репозитории есть пример данных в каталоге sample_data/ для тестирования:

  • customer.ntds: пример файла NTDS
  • oclHashcat.pot: пример взломанных паролей
  • history/: пример данных с историей паролей

Тестирование с примером данных:

root@kitploit:~
python dpat.py -n sample_data/customer.ntds -c sample_data/oclHashcat.pot -p 8

Расширенные возможности

Анализ групп

Создайте файлы членства в группах с помощью PowerShell:

root@kitploit:~
Get-NetGroupMember -Recurse -GroupName "Domain Admins" > "Domain Admins.txt"

Анализ Kerberoastable учётных записей

Используйте скрипт parse-kerberoastable.py из CypherHound для генерации файлов Kerberoastable учётных записей для расширенного анализа.

Интеграция с CypherHound

Вы можете передавать в DPAT файлы, сгенерированные CypherHound, чтобы добавить больше статистики в отчёты DPAT. В настоящее время дополнительные статистики включают:

  • Статистику взлома по каждой группе в заданном домене
  • Взломанные Kerberoastable учётные записи

Если вы хотите использовать это для получения дополнительной статистики, вам потребуются следующие скрипты:

  • parse-memberships.py. Передайте каталог вывода DPAT с флагом -g.
  • parse-kerberoastable.py. Передайте файл вывода DPAT с флагом -kz.

Это простые скрипты, ссылки на использование приведены выше; их использование должно быть очевидным.

Санитизация данных

Используйте флаг -s для создания обезличенных отчётов, пригодных для обмена:

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -s

Устранение неполадок

Частые проблемы

"No module named 'distutils'"

  • Ожидаемо на Python 3.12+. DPAT обрабатывает это автоматически.

Пустые отчёты

  • Убедитесь, что формат файла NTDS соответствует ожидаемому
  • Проверьте, что файл взломанных паролей содержит соответствующие хэши
  • Убедитесь, что параметр минимальной длины пароля указан верно

Отсутствуют ссылки на детализацию

  • Некоторые разделы отчёта могут не иметь страниц детализации, если данные не найдены
  • Это нормальное поведение для пустых категорий

Режим отладки

Включите отладочный вывод для устранения неполадок:

root@kitploit:~
python dpat.py -n customer.ntds -c hashcat.potfile -p 8 -dbg

Тестирование

Запустите набор тестов:

root@kitploit:~
python -m unittest tests.unit.test_core -v
python -m unittest tests.integration.test_integration -v

Участие в разработке

  1. Форкните репозиторий
  2. Создайте ветку для новой функции
  3. Внесите изменения
  4. Добавьте тесты для новой функциональности
  5. Отправьте pull request

Лицензия

Этот проект лицензирован по лицензии MIT. Подробности в файле LICENSE.

Авторы

  • Carrie Roberts - оригинальный автор
  • Dylan Evans - участник

Первоначально спонсировано:

Black Hills Information Security

Поддержка

По вопросам, проблемам или предложениям используйте систему отслеживания ошибок на GitHub.

Скачать инструмент