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

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

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

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

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

Категории

Все категории
Loading categories
adit — Разведка Active Directory и аудит безопасности в режиме только чтения через ADWS (net.tcp/9389) на Go | Kitploit
Инструменты/GitHubGitHub/joda32/adit
Оборонительные ИнструментыПовышение привилегийРазведкаАнализ уязвимостейСкриптинг и автоматизацияАудит конфигурацииСбор информацииСетевая безопасностьТестирование на ПроникновениеАутентификацияRed Teaming
18921 дней назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →
GitHubjoda32/adit

adit

Разведка Active Directory и аудит безопасности в режиме только чтения через ADWS (net.tcp/9389) на Go

Репозиторий
Поделиться

adit

adit — это единый бинарный инструмент разведки Active Directory и аудита безопасности в режиме только чтения, который взаимодействует с контроллером домена через ADWS (Active Directory Web Services, TCP/9389) вместо LDAP.

adit — это горизонтальный вход в шахту, тихий путь внутрь. Запросы к AD через ADWS, а не через LDAP/389, означают, что трафик представляет собой WCF net.tcp с кадрированием, двоичный XML SOAP поверх необычного порта, поэтому он гораздо реже подвергается инспекции, фильтрации или сигнатурному обнаружению, чем классический LDAP, — при этом возвращая те же данные каталога. adit реализует полный стек протокола ADWS на Go без внешних зависимостей времени выполнения.

┌────────────┐   net.tcp/9389   ┌──────────────┐
│   adit     │ ───────────────▶ │  ADWS on DC  │ ──▶ local LDAP
│  (Linux)   │   NMF · NNS ·    │  (port 9389) │
│            │   NBFSE · SOAP   └──────────────┘
└────────────┘

adit — разведка и аудит только для чтения через ADWS

  • Разведка — 31 коллектор экспортирует данные каталога в CSV, оформленную книгу XLSX и автономную HTML-панель.
  • Аудит — движок проверок только для чтения оценивает 30 правил (DCSync, опасные ACL, AdminSDHolder, делегирование, roasting, ADCS ESC1–4/9, устаревшие/legacy объекты, …) и выдаёт JSON-отчёт с ранжированием по критичности, который также отображается в панели.
  • Доступ — маршрутизация всего трафика через HTTP CONNECT или прокси SOCKS4/4a/5 для аудита контроллера домена, доступного только через jump host.
  • Аутентификация — NTLM или Kerberos, полностью собственная реализация (NTLMv2 sign+seal, RFC 4121 sealed GSS Wrap), проверенная побайтово на соответствие impacket.

adit — инструмент защиты/аудита и авторизованной оценки. Запускайте его только против каталогов, которые вы уполномочены оценивать.

Функциональность

ВозможностьПодробности
ТранспортADWS поверх WCF net.tcp (TCP/9389) — кадрирование MC-NMF, рукопожатие MS-NNS, двоичный XML MC-NBFS/NBFSE, SOAP WS-Enumeration/WS-Transfer
АутентификацияNTLMv2 (sign + seal) и Kerberos (ccache / keytab / пароль; RFC 4121 sealed GSS)
Коллекторы разведки31 модуль (см. ниже) → CSV по каждому модулю
ОтчётностьОформленная многолистовая книга XLSX + автономная HTML-панель (поиск/сортировка, значки критичности, scroll-spy)
Аудит безопасности30 правил только для чтения (вкл. ADCS ESC1–4/9) → JSON с ранжированием по критичности, также отображается в панели
Прокси / jump hostHTTP CONNECT, SOCKS5/5h, SOCKS4/4a (с аутентификацией прокси + удалённым DNS)
Постраничная выборкаСерверная постраничная выборка WS-Enumeration Pull, настраиваемый размер страницы
Офлайн-отчётностьПересборка XLSX/HTML из ранее собранных CSV, контроллер домена не нужен
ЗависимостиЧистый Go; без библиотеки LDAP, без .NET, без внешних сервисов

Коллекторы

forest, domain, trusts, sites, subnets, schemahistory, dcs, users, userspns, groups, computers, computerspns, ous, gpos, gplinks, passwordpolicy, fgpp, dnszones, dnsrecords, kerberoastable, asreproastable, krbtgt, adcs, cas, laps, protectedgroups, groupmembers, gmsa, dmsa, printers, bitlocker

ADCS (adcs) помечает ESC1–ESC4/ESC9; laps сообщает, кто может прочитать каждый пароль; protectedgroups проверяет Protected Users. Запустите adit -list-modules, чтобы получить актуальный список.

Проверки аудита

-audit запускает 30 правил только для чтения. Находки содержат идентификатор правила, критичность, затронутые объекты, доказательства и рекомендации по устранению, и записываются в Adit-Audit.json (а при сочетании с -collect — раздел "Audit Findings", который отображается в начале панели). Движок никогда не читает значения секретных атрибутов (LAPS / gMSA / BitLocker), хотя коллекторы разведки могут это делать.

ПравилоКритичностьЧто выявляет
AD-DOM-010CriticalПрава DCSync (репликация) у субъекта, не входящего в Tier-0
AD-ACL-001/005/006/007/011–016CriticalОпасный контроль (GenericAll/Write, WriteDACL/Owner, ForceChangePassword, Write SPN / KeyCredentialLink / member / AllowedToAct) над привилегированным объектом
AD-SDH-001/002CriticalНеожиданный контроль / владелец AdminSDHolder
AD-CS-001Critical–MediumESC1 — шаблон сертификата допускает субъект, указанный заявителем
AD-CS-002Critical–MediumESC2 — шаблон сертификата Any-Purpose / без EKU
AD-CS-003High–MediumESC3 — шаблон Certificate Request Agent
AD-CS-004HighESC4 — слабый контроль доступа к шаблону сертификата
AD-CS-009HighESC9 — в шаблоне сертификата отсутствует расширение безопасности
AD-CS-005Critical/HighESC5 — опасный контроль над объектом PKI (NTAuthCertificates, хранилище CA, объект CA)
AD-CS-006InfoAD CS присутствует — ESC6/ESC7/ESC8 требуют проверки на уровне хоста (не наблюдаемы через ADWS)
AD-DOM-008HighОбратимое шифрование паролей включено на уровне домена
AD-USR-001HighKerberos pre-auth отключён (возможен AS-REP roasting)
AD-USR-009HighУчётная запись использует только шифрование DES
AD-CMP-006HighНеограниченное делегирование на не-DC
AD-KCL-001HighKey Credential (shadow credential) на привилегированной учётной записи
AD-KRB-001HighПароль krbtgt устарел
AD-DOM-005MediumMachine Account Quota > 0 (любой пользователь может присоединять компьютеры)
AD-USR-002MediumУчётная запись службы, уязвимая к Kerberoasting (High, если привилегированная)
AD-USR-005MediumУстановлен PASSWD_NOTREQD
AD-USR-006MediumСрок действия пароля привилегированной учётной записи не истекает
AD-USR-011MediumПароль привилегированной учётной записи устарел
AD-CMP-008MediumНастроено делегирование с ограничением на основе ресурсов
AD-CMP-012MediumУстаревшая / неподдерживаемая операционная система
AD-GRP-009MediumВнешний субъект безопасности в привилегированной группе
AD-GRP-020MediumСкрытое привилегированное членство через primaryGroupID
AD-TRU-001/003High/MediumДоверие без фильтрации SID / с историей SID
AD-DNS-003/004Medium/LowПрисутствует запись WPAD / ISATAP
AD-CMP-011LowУстаревшая учётная запись компьютера
AD-INT-005HighsIDHistory содержит привилегированный SID
AD-USR-020HighВосстановимый пароль хранится в userPassword / unixUserPassword
AD-USR-021HighВозможный пароль, оставленный в description / info / comment (эвристика)
AD-DOM-012High/MediumEveryone / Anonymous / Authenticated Users в Pre-Windows 2000 Compatible Access

Пороговые значения настраиваются: -krbtgt-max-age, -priv-pwd-max-age, -stale-days.

Примечание по ADCS: ESC1–ESC5 и ESC9 оцениваются по объектам AD через ADWS. ESC6 (EDITF_ATTRIBUTESUBJECTALTNAME2), ESC7 (ACL ролей CA) и ESC8 (веб-запись / NTLM relay) находятся в реестре/HTTP-эндпоинтах хоста CA и не наблюдаемы через ADWS — AD-CS-006 сигнализирует о наличии CA, чтобы их можно было проверить на хосте (например, с помощью Certipy).

Начало работы

Требуется Go 1.26+. Других зависимостей для сборки нет.

# Build the binary
go build -o adit ./cmd/adit
./adit -version

# …or run without installing
go run ./cmd/adit -h

# Cross-compile release archives for linux/windows/darwin (amd64+arm64) into dist/
bash scripts/build-release.sh

-fqdn должен быть реальным FQDN контроллера домена (а не его IP-адресом): SOAP-заголовок To для ADWS сопоставляется с конечной точкой с помощью AddressFilter в WCF. Найдите его, например, командой nslookup -type=SRV _ldap._tcp.dc._msdcs.<domain> <dc-ip>.

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

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