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

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

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

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

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

Категории

Все категории
Loading categories
ldapdomaindump — Дампер информации Active Directory через LDAP | Kitploit
Инструменты/GitHubGitHub/dirkjanm/ldapdomaindump
РазведкаСбор информацииТестирование на Проникновение
GitHubdirkjanm/ldapdomaindump

ldapdomaindump

Дампер информации Active Directory через LDAP

Репозиторий
1.4k2311 год назадПроверено Kitploit

Популярное

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

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

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

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

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

LDAPDomainDump

Дампер информации Active Directory через LDAP

Введение

В домене Active Directory множество интересной информации можно получить через LDAP от любого аутентифицированного пользователя (или машины). Это делает LDAP интересным протоколом для сбора информации на этапе разведки в ходе пентеста внутренней сети. Проблема в том, что данные из LDAP часто недоступны в удобном для чтения формате.

ldapdomaindump — это инструмент, предназначенный для решения этой проблемы: он собирает и анализирует информацию, доступную через LDAP, и выводит её в удобочитаемом HTML-формате, а также в машиночитаемых форматах json и csv/tsv/greppable.

Инструмент создавался с учётом следующих целей:

  • Простой обзор всех пользователей/групп/компьютеров/политик в домене
  • Аутентификация как по имени пользователя и паролю, так и с использованием NTLM-хешей (требуется ldap3 >=1.3.1)
  • Возможность запуска инструмента с существующим аутентифицированным соединением к LDAP-серверу, что позволяет интегрироваться с инструментами ретрансляции, такими как impackets ntlmrelayx

Инструмент создаёт несколько файлов, содержащих обзор объектов в домене:

  • domain_groups: Список групп в домене
  • domain_users: Список пользователей в домене
  • domain_computers: Список учётных записей компьютеров в домене
  • domain_policy: Политика домена, такая как требования к паролям и политика блокировки
  • domain_trusts: Входящие и исходящие доверительные отношения домена и их свойства

А также два сгруппированных файла:

  • domain_users_by_group: Пользователи домена по группам, в которых они состоят
  • domain_computers_by_os: Компьютеры домена, отсортированные по операционной системе

Зависимости и установка

Требуются ldap3 > 2.0 и dnspython. ldapdomaindump требует Python 3.6 или новее.

Зависимости можно установить вручную с помощью pip install ldap3 dnspython future, но в большинстве случаев pip установит их автоматически при установке основного пакета из git или pypi.

Пакет ldapdomaindump можно установить с помощью python setup.py install из исходного кода git, или для последнего релиза с помощью pip install ldapdomaindump.

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

Есть 3 способа использовать инструмент:

  • Из исходного кода: запустите python ldapdomaindump.py
  • После установки: запустите python -m ldapdomaindump
  • После установки: запустите ldapdomaindump

Справку можно получить с помощью ключа -h:

root@kitploit:~
usage: ldapdomaindump.py [-h] [-u USERNAME] [-p PASSWORD] [-at {NTLM,SIMPLE}]
                         [-o DIRECTORY] [--no-html] [--no-json] [--no-grep]
                         [--grouped-json] [-d DELIMITER] [-r] [-n DNS_SERVER]
                         [-m]
                         HOSTNAME

Domain information dumper via LDAP. Dumps users/computers/groups and
OS/membership information to HTML/JSON/greppable output.

Required options:
  HOSTNAME              Hostname/ip or ldap://host:port connection string to
                        connect to (use ldaps:// to use SSL)

Main options:
  -h, --help            show this help message and exit
  -u USERNAME, --user USERNAME
                        DOMAIN\username for authentication, leave empty for
                        anonymous authentication
  -p PASSWORD, --password PASSWORD
                        Password or LM:NTLM hash, will prompt if not specified
  -at {NTLM,SIMPLE}, --authtype {NTLM,SIMPLE}
                        Authentication type (NTLM or SIMPLE, default: NTLM)

Output options:
  -o DIRECTORY, --outdir DIRECTORY
                        Directory in which the dump will be saved (default:
                        current)
  --no-html             Disable HTML output
  --no-json             Disable JSON output
  --no-grep             Disable Greppable output
  --grouped-json        Also write json files for grouped files (default:
                        disabled)
  -d DELIMITER, --delimiter DELIMITER
                        Field delimiter for greppable output (default: tab)

Misc options:
  -r, --resolve         Resolve computer hostnames (might take a while and
                        cause high traffic on large networks)
  -n DNS_SERVER, --dns-server DNS_SERVER
                        Use custom DNS resolver instead of system DNS (try a
                        domain controller IP)
  -m, --minimal         Only query minimal set of attributes to limit memmory
                        usage

Опции

Аутентификация

Большинство AD-серверов поддерживают NTLM-аутентификацию. В редких случаях, когда это не так, используйте --authtype SIMPLE.

Форматы вывода

По умолчанию инструмент выводит все файлы в форматах HTML, JSON и через табуляцию (greppable). Также для удобства создаются два сгруппированных файла (users_by_group и computers_by_os). Для них нет вывода в greppable. JSON-вывод для сгруппированных файлов отключён по умолчанию, поскольку он создаёт очень большие файлы без дополнительных данных, которых нет в других файлах.

Разрешение DNS

Важным параметром является -r, который определяет, следует ли разрешать атрибут DNSHostName компьютеров в IPv4-адрес. Хотя это может быть очень полезно, атрибут DNSHostName не обновляется автоматически. Если в домене AD используются поддомены для имён компьютеров, DNSHostName часто будет некорректным и не разрешится. Также имейте в виду, что разрешение всех имён в домене может создать большую нагрузку на контроллер домена.

Минимизация сетевого и потребления памяти

По умолчанию ldapdomaindump пытается записать на диск каждый атрибут, который может прочитать, в файлы .json. В больших сетях это потребляет много памяти (поскольку отношения групп в настоящее время вычисляются в памяти перед записью на диск). Чтобы сбрасывать только минимально необходимые атрибуты (те, которые по умолчанию отображаются в файлах .html и .grep), используйте параметр --minimal.

Визуализация групп с помощью BloodHound

LDAPDomainDump включает утилиту для преобразования файлов .json ldapdomaindump в CSV-файлы, подходящие для BloodHound. Утилита называется ldd2bloodhound и добавляется в PATH при установке. Альтернативно её можно запустить с помощью python -m ldapdomaindump.convert или python ldapdomaindump/convert.py, если вы работаете из исходного кода. Инструмент конвертации берёт файлы .json пользователей/групп/компьютеров/доверительных отношений и преобразует их в group_membership.csv и trust.csv, которые можно добавить в BloodHound. Обратите внимание, что эти файлы совместимы только с BloodHound 1.x, который довольно стар. Планов по поддержке последней версии нет, поскольку для этого был создан проект BloodHound.py. При использовании метода сбора только с контроллера домена (DCOnly) этот инструмент также будет обращаться только к LDAP и собирать больше информации, чем ldapdomaindump.

Визуализация дампа с красивым выводом, как у enum4linux

LDAPDomainDump включает утилиту для вывода файлов .json ldapdomaindump в стиле вывода enum4linux. Утилита называется ldd2pretty и добавляется в PATH при установке. Альтернативно её можно запустить с помощью python -m ldapdomaindump.pretty или python ldapdomaindump/pretty.py, если вы работаете из исходного кода.

Лицензия

MIT

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