В большинстве внутренних пентестов путь от учётной записи рядового пользователя до Domain Admin занимает от 4 до 48 часов. Не потому что инфраструктура «дырявая» - а потому что Active Directory проектировалась для удобства администрирования, а не для противодействия атакующему с валидным доменным аккаунтом. Один забытый SPN на сервисной учётке с паролем
, одна кривая ACL, выданная три года назад «на время миграции» - и граф BloodHound рисует прямую линию к KRBTGT. У меня рекорд - 22 минуты от первого LDAP-запроса до хеша
. Не хвастаюсь - просто показываю, насколько типичная корпоративная AD беззащитна перед тем, кто знает, куда смотреть. Эта статья - карта всех этапов такого пути.
Навигация по статье и кластеру
#Этап атакиПодробный разбор1Разведка и перечисление домена
Пентест Active Directory: полный гайд от разведки до Domain Admin в 20252Построение графа атак через BloodHound
BloodHound Active Directory: разведка домена, построение графа атак и эксплуатация ACL3ACL-атаки и эскалация через делегирование
Privilege Escalation в Active Directory: ACL-атаки, делегирование и цепочки от GenericAll до DCSync4Pass-the-Hash и lateral movement
Pass-the-Hash атака Active Directory: от NTLM-хеша до Domain Admin через lateral movement5DCSync, Golden Ticket, Silver Ticket
Атаки на контроллер домена Active Directory: DCSync, Golden Ticket и Silver Ticket на практике6Атаки на AD CS (ESC1–ESC13)
AD CS атаки эскалация привилегий: практический гайд по ESC1–ESC13 с Certipy7Харденинг и защитные меры
Харденинг Active Directory: LAPS, LLMNR и NBT-NS - три меры против 80% внутренних атак
Ниже - обзор каждого этапа с ключевыми техниками, инструментами и практическими ориентирами. Каждая секция ссылается на детальный spoke-материал, где техника разобрана на уровне конкретных команд с флагами и артефактов в логах.
Разведка Active Directory: от первого пакета до полной карты домена
Разведка - этап, на котором формируется 80% успеха пентеста. Имея только доменную учётку уровня
, атакующий через стандартные LDAP-запросы получает доступ к чудовищному объёму информации: полный список пользователей и их атрибутов, все группы и вложенные членства, компьютеры с версиями ОС, объекты GPO, ACL на OU, доверительные отношения и FSMO-роли. Это не уязвимость - это штатное поведение LDAP в Active Directory. Microsoft так задумала, и мы этим пользуемся.
Что собираем и чем
Первые минуты после получения доступа к домену выглядят так:
- Определение контроллеров домена - DNS-запрос
Код:
_ldap._tcp.dc._msdcs.
отдаёт все DC, их IP и приоритеты. Альтернативно -
Код:
nslookup -type=SRV _kerberos._tcp.
.
- Перечисление пользователей и SPN -
или
выгружают пользователей с атрибутом
Код:
servicePrincipalName
(маркер для Kerberoasting),
(флаг
для AS-REP Roasting) и поле
. Про description - отдельная песня: администраторы туда пароли записывают чаще, чем хотелось бы верить.
- Сканирование портов контроллера - порты 53 (DNS), 88 (Kerberos), 135 (RPC), 389/636 (LDAP/LDAPS), 445 (SMB), 3268/3269 (GC) определяют доступные протоколы и attack surface.
на этих портах покажет версии сервисов.
- Анонимный SMB -
покажет, доступны ли шары
,
или кастомные шары без аутентификации. В
нередко валяются скрипты групповых политик с паролями в открытом виде.
Когда включать BloodHound
После базового перечисления - запускаем SharpHound (коллектор данных для BloodHound). Он собирает сессии, членства в группах, ACL, делегирование и trust-отношения через LDAP и Windows API. BloodHound строит граф атакующих путей - и на нём визуально видно: какой пользователь через какую цепочку прав может достичь Domain Admin.
На реальных проектах именно этот граф становится главным аргументом в отчёте. Типичная находка: учётная запись мониторинговой службы состоит в группе
, у которой есть
на OU с доменными администраторами - и эта цепочка строилась годами, по кирпичику, «временно».
Подробный разбор инструментов разведки с конкретными командами и флагами - в гайде:
Пентест Active Directory: полный гайд от разведки до Domain Admin в 2025. Построение графа атак и кастомные Cypher-запросы разобраны в материале
BloodHound Active Directory: разведка домена, построение графа атак и эксплуатация ACL.
Чеклист: минимальная разведка AD
- Получить список DC через DNS SRV
- Выгрузить всех пользователей с атрибутами через LDAP
- Определить учётки с SPN (для Kerberoasting)
- Определить учётки с
(для AS-REP Roasting)
- Проверить анонимный доступ к SMB-шарам
- Запустить SharpHound и загрузить данные в BloodHound
- Проверить trust-отношения между доменами и лесами
Первоначальный доступ: LLMNR Poisoning, Responder и захват хешей NTLM
В сценарии grey box (самый частый формат пентеста AD) учётная запись уже есть. Но в black box или при Red Team-кампании первый доменный аккаунт нужно добыть. Классический вектор - отравление широковещательных протоколов разрешения имён.
Как работает атака
Когда Windows-машина не может разрешить имя через DNS, она шлёт широковещательный запрос по LLMNR (UDP 5355) и NBT-NS (UDP 137). Атакующий с Responder в том же сегменте отвечает раньше легитимного хоста - и жертва отправляет ему свой NTLMv2-хеш. Техника маппится на MITRE ATT&CK T1557.001 (LLMNR/NBT-NS Poisoning and SMB Relay).
Полученные хеши можно:
- Брутфорсить офлайн через Hashcat (
для NTLMv2) - при слабом пароле результат за минуты.
- Relay-ить на хосты с отключённым SMB Signing через
из Impacket. Если relay направить на LDAP контроллера домена - можно создать машинный аккаунт или провести атаку Shadow Credentials.
По данным RedTeam Pentesting (2025), коэрция (authentication coercion) через RPC-функции - логический следующий шаг после получения первого доменного аккаунта. В отличие от LLMNR poisoning, coercion позволяет целенаправленно заставить конкретный хост аутентифицироваться на машину атакующего, что открывает путь к RBCD и S4U2Self abuse.
Что детектирует SOC
Responder генерирует характерный сетевой трафик: ответы на LLMNR/NBT-NS с IP атакующего. Правила в SIEM на «новый responder в сегменте» - тривиальны. Но на практике мониторинг этих протоколов отсутствует в большинстве инфраструктур. Просто никто не смотрит.
О защитных мерах - отключение LLMNR/NBT-NS через GPO и настройка LAPS для ротации локальных паролей - разобрано в материале
Харденинг Active Directory: LAPS, LLMNR и NBT-NS - три меры против 80% внутренних атак.
Kerberoasting и AS-REP Roasting: атаки на домен Windows через Kerberos
Kerberos - основной протокол аутентификации в Active Directory, и именно его механика порождает два наиболее массово эксплуатируемых вектора: Kerberoasting и AS-REP Roasting.
Kerberoasting атака
Любой аутентифицированный пользователь домена может запросить у KDC сервисный тикет (TGS) для любого аккаунта с
Код:
servicePrincipalName
. Тикет зашифрован хешем пароля этой сервисной учётки - его можно вытащить и брутфорсить офлайн. Ни один журнал не зафиксирует сам факт перебора; в логах DC появится только событие
(запрос TGS) с типом шифрования
(RC4-HMAC),
(AES128) или
(AES256). При массовых запросах от одного пользователя - это индикатор Kerberoasting. RC4-запросы от современных клиентов - самый яркий сигнал, потому что легитимные клиенты используют AES. Для AES-тикетов детект строится на аномальном количестве TGS_REQ к разным SPN от одного аккаунта.
Инструменты:
из Impacket,
из PowerView, Rubeus с параметром
.
AS-REP Roasting
Если у учётной записи отключена Kerberos pre-authentication (флаг
в
), атакующий может запросить AS-REP без знания пароля. Ответ KDC содержит часть, зашифрованную хешем пароля пользователя - перебирается в Hashcat (
).
Практический takeaway
ПараметрKerberoastingAS-REP RoastingТребуется доменная учёткаДаНет (достаточно знать имя)Целевые аккаунтыС SPNС
Event ID на DC4769 (enc type 0x17 = RC4, 0x11 = AES128, 0x12 = AES256; для AES детект по аномальному объёму TGS_REQ)4768Hashcat mode
(RC4),
(AES128),
(AES256)
(RC4),
(AES128),
(AES256)Типичный результат30-60% сервисных учёток ломаются за часыВстречается реже, но пароли обычно слабее
Если нашли десятки SPN-учёток - приоритизируйте те, что входят в привилегированные группы (смотрим через BloodHound). Нет смысла жечь GPU на учётку, которая ведёт в тупик.
Повышение привилегий Active Directory: ACL-атаки и делегирование Kerberos
После получения первых учётных данных начинается самый творческий этап - privilege escalation. Каждый домен уникален, и пути повышения зависят от конкретных ошибок конфигурации, накопленных за годы. Тут шаблоны не работают - работает внимательность.
ACL-атаки: когда права выданы не тем
Active Directory хранит Access Control Lists на каждый объект: пользователя, группу, OU, GPO. Типичные опасные права:
- GenericAll - полный контроль над объектом. На пользователя = сброс пароля. На группу = добавление себя в неё. На компьютер = настройка RBCD.
- GenericWrite - запись произвольных атрибутов. Позволяет установить SPN (для Kerberoasting привилегированного аккаунта) или модифицировать
Код:
msDS-KeyCredentialLink
(Shadow Credentials).
- WriteDACL - право изменять сам ACL объекта. Атакующий выдаёт себе
и дальше - как выше.
- ForceChangePassword - сброс пароля без знания текущего.
BloodHound автоматически маркирует эти рёбра в графе. Но кастомные Cypher-запросы помогают найти неочевидные цепочки: например, пользователь A имеет
на группу B, члены которой имеют
на OU с Domain Admins. Такие цепочки из трёх-четырёх звеньев - самое вкусное.
Делегирование Kerberos: три вида, три вектора
- Unconstrained Delegation - машина хранит TGT всех аутентифицирующихся пользователей. Если через коэрцию (PetitPotam, PrinterBug) заставить DC аутентифицироваться на такую машину - его TGT попадёт в память. Дальше - DCSync.
- Constrained Delegation - ограничена конкретным сервисом, но через S4U2Proxy + альтернативный сервис (alt-service) можно выйти за рамки.
- Resource-Based Constrained Delegation (RBCD) - атакующий, контролирующий машинный аккаунт, настраивает
Код:
msDS-AllowedToActOnBehalfOfOtherIdentity
на целевом хосте (если есть
) и запрашивает тикет для имперсонации администратора.
Все эти техники с пошаговыми цепочками и реальными примерами от GenericAll до DCSync разобраны в отдельном материале:
Privilege Escalation в Active Directory: ACL-атаки, делегирование и цепочки от GenericAll до DCSync.
Pass-the-Hash и lateral movement: перемещение по сети без знания паролей
Получив NTLM-хеш доменного пользователя (из дампа LSASS через Mimikatz или из SAM через
), атакующий аутентифицируется на другие хосты без расшифровки пароля. Это Pass-the-Hash - одна из фундаментальных техник lateral movement в Active Directory.
Инструменты lateral movement
ИнструментПротоколОсобенн ость
(Impacket)SMBСоздаёт сервис на целевой машине, шумный (Event ID 7045)
(Impacket)WMI/DCOMНе создаёт сервис, тише для EDR
(Impacket)SMBВременный сервис на каждую команду (Event ID 7045), характерный
с редиректом в named pipeNetExec (наследник CrackMapExec)SMB/WinRM/LDAPМассовое выполнение команд, spray-проверка учёток
WinRM (HTTP/5985)Интерактивная PowerShell-сессия, загрузка файлов
В 2025 году вместо устаревшего CrackMapExec берите
NetExec (
) - он активно поддерживается сообществом и умеет больше: модули для LDAP-перечисления, проверки LAPS-паролей, автоматического Kerberoasting. CrackMapExec, по сути, мёртв.
Что видит защитник
Pass-the-Hash оставляет характерный след: событие
с Logon Type 3 (Network) и типом аутентификации NTLM (не Kerberos). Массовые
от одного аккаунта на множестве хостов за короткий промежуток - прямой индикатор lateral movement. EDR-решения (CrowdStrike, Defender for Endpoint) также детектируют обращения к LSASS.
Разбор каждого этапа с конкретными примерами - в гайде:
Pass-the-Hash атака Active Directory: от NTLM-хеша до Domain Admin через lateral movement.
Атаки на контроллер домена: DCSync, Golden Ticket и Silver Ticket
Когда путь к привилегированному аккаунту пройден - извлекаем секреты из базы Active Directory (NTDS.dit) и закрепляемся в домене.
DCSync атака
DCSync эмулирует поведение контроллера домена, запрашивающего репликацию через MS-DRSR. Аккаунт атакующего должен иметь права
Код:
Replicating Directory Changes
и
Код:
Replicating Directory Changes All
- они есть у Domain Admins, Enterprise Admins и самих DC по умолчанию. Команда
Код:
secretsdump.py -just-dc /@
из Impacket выгружает все хеши NTLM, включая хеш
- ключ к Golden Ticket.
На стороне SOC DCSync порождает событие
с обращением к
Код:
1131f6aa-9c07-11d1-f79f-00c04fc2dcd2
(GUID для DS-Replication-Get-Changes). Один из самых надёжных индикаторов - если у вас его нет в SIEM, добавьте прямо сейчас.
Golden Ticket
Имея хеш
, атакующий генерирует TGT для любого пользователя домена с произвольным временем жизни и произвольными группами привилегий. Golden Ticket переживает смену паролей всех пользователей - пока не будет дважды сброшен пароль
(в корректном порядке с интервалом, превышающим MaxTicketAge). На практике мало кто это делает правильно.
Silver Ticket
В отличие от Golden Ticket, Silver Ticket не обращается к KDC - он генерируется локально с хешем машинного аккаунта целевого сервиса. Менее заметен, но ограничен конкретным сервисом (CIFS, HTTP, MSSQLSvc).
Практический разбор всех трёх техник с примерами Impacket и Mimikatz - в материале:
Атаки на контроллер домена Active Directory: DCSync, Golden Ticket и Silver Ticket на практике.
AD CS атаки: эскалация привилегий через службы сертификатов
Active Directory Certificate Services (AD CS) - одна из самых недооценённых поверхностей атаки в корпоративных доменах. Если в инфраструктуре развёрнут Enterprise CA, атакующий может получить сертификат, позволяющий аутентифицироваться как Domain Admin - и всё это без единого обращения к DC за Kerberos-тикетом. Красота.
Классификация ESC-уязвимостей
SpecterOps систематизировали атаки на AD CS в виде классов ESC (Escalation Scenario). Наиболее критичные:
- ESC1 - шаблон сертификата позволяет указать произвольный SAN (Subject Alternative Name). Атакующий запрашивает сертификат с SAN
Код:
Administrator@domain.com
и получает аутентификационный сертификат Domain Admin. Просто так.
- ESC8 - Web Enrollment endpoint AD CS доступен по HTTP без принудительного HTTPS. Позволяет relay NTLM-аутентификацию на CA и получить сертификат от имени жертвы.
- ESC11 - аналогичен ESC8, но relay через RPC вместо HTTP.
Для обнаружения и эксплуатации -
Certipy. Он автоматически перечисляет шаблоны, определяет уязвимые конфигурации и выполняет запросы сертификатов.
Связь с коэрцией: по данным RedTeam Pentesting (2025), ESC8 и ESC11 - ключевые relay-цели при authentication coercion. Атакующий через PetitPotam (CVE-2021-36942, CVSS 7.5) принуждает DC аутентифицироваться, relay-ит сессию на CA и получает сертификат от имени DC. Дальше - DCSync через PKINIT.
Полный практический гайд, по каждому классу ESC с командами Certipy:
AD CS атаки эскалация привилегий: практический гайд по ESC1–ESC13 с Certipy.
Coercion-техники 2025: PetitPotam, PrinterBug и обход новых митигаций
Authentication coercion - принуждение Windows-хоста аутентифицироваться на машину атакующего - остаётся одним из самых мощных векторов в пентесте Active Directory. По данным RedTeam Pentesting (блог от июня 2025), coercion с любым низкопривилегированным доменным аккаунтом обычно позволяет получить полный административный доступ практически к произвольным хостам и серверам Windows.
📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом
One Level или выше
Получить доступ просто — достаточно проявить активность на форуме
У каждой из этих уязвимостей рабочие PoC в публичном доступе. На реальных engagement-ах проверяйте их первыми - они дают быстрый путь к DC.
AD Pentest инструменты: арсенал Red Team оператора в 2025 году
Инструментарий для пентеста Active Directory стабилизировался вокруг нескольких проектов. Ниже - карта по этапам kill chain:
Разведка и перечисление- BloodHound CE + SharpHound - построение графа атак. SharpHound собирает данные через LDAP и Windows API; BloodHound CE (Neo4j для графовой БД, PostgreSQL для метаданных) визуализирует пути. Без этого инструмента пентест AD - как хирургия вслепую.
- ldapdomaindump - выгрузка AD-объектов через LDAP в HTML/JSON. Быстрое перечисление без GUI
- enum4linux-ng - перечисление через SMB/RPC: пользователи, группы, шары, политика паролей
- PingCastle - сканер здоровья AD. Генерирует отчёт с оценкой рисков - отлично ложится в отчёт клиенту
Эксплуатация и lateral movement
- Impacket - набор Python-скриптов для работы с Windows-протоколами:
(DCSync, SAM dump),
/
(remote execution),
(Kerberoasting),
(relay). Рабочая лошадка каждого пентеста.
- NetExec (nxc) - замена CrackMapExec. Массовое выполнение команд, проверка учёток, автоматизация spray-атак
- Rubeus - C#-инструмент для атак на Kerberos: AS-REP Roasting, Kerberoasting, S4U abuse, Pass-the-Ticket, Overpass-the-Hash
- Certipy - перечисление и эксплуатация AD CS (ESC1–ESC13)
- Responder - отравление LLMNR/NBT-NS и захват NTLMv2-хешей
Пост-эксплуатация
- Mimikatz - извлечение кредов из памяти (LSASS), генерация Golden/Silver Ticket, DCSync
- Hashcat - офлайн-перебор хешей (NTLMv2:
, NTLM:
, Kerberoast:
, AS-REP:
)
Минимальный пайплайн - от начала до проверки наличия пути к DA:
Bash:
Код:
# 1. Перечисление SPN-учёток (Kerberoasting)
GetUserSPNs.py -request -dc-ip
10.0
.0.1 domain.local/user:Password1
# 2. Сбор данных для BloodHound (SharpHound из Linux)
bloodhound-python -c All -d domain.local -u user -p Password1 -ns
10.0
.0.1
# 3. Массовая проверка: где текущий юзер - локальный админ
nxc smb
10.0
.0.0/24 -u user -p Password1 --local-auth
Лабораторная среда для отработки атак на Active Directory
Без лабораторной среды осваивать атаки на AD - как учиться плавать по книжке. Утонешь на первом же реальном проекте.
GOAD (Game of Active Directory)
Проект Orange Cyberdefense, разворачивается через Vagrant + Ansible. Несколько доменов с trust-отношениями, предустановленные misconfiguration (Kerberoasting, RBCD, AD CS, LLMNR), уязвимые SPN-учётки и GPO. Идеален для отработки полного kill chain. Я начинал именно с него - рекомендую.
Требования: 16+ ГБ RAM, VirtualBox или VMware, ~60 ГБ дискового пространства.
Самописный стенд
Минимальный набор: Windows Server 2019/2022 (DC) + 1-2 Windows 10/11 (workstations) + Kali Linux. Поднимается за час:
Код:
Install-WindowsFeature AD-Domain-Services; Install-ADDSForest
, создание OU, пользователей с SPN, намеренные misconfiguration (Unconstrained Delegation на одном хосте, слабый пароль на SPN-учётке, шаблон AD CS с ESC1). Зато потом можно ломать сколько угодно и в любом порядке.
Онлайн-площадки
HackTheBox Pro Labs (Dante, Offshore, RastaLabs) и TryHackMe AD-комнаты - готовые среды без необходимости разворачивать инфраструктуру локально.
Почему защита AD не работает без понимания атак: взгляд Red Team
Active Directory - технология с 25-летней историей. Открытый LDAP для всех доменных пользователей, транзитивные trust-отношения, RC4 как fallback-шифрование - всё это было нормой в 2000 году. Сегодня это поверхность атаки.
Microsoft последовательно закрывает вектора: EPA для LDAP channel binding, AES-only Kerberos, Windows Server 2025 с обязательной подписью SMB. Но миграция занимает годы: в реальных средах я до сих пор встречаю Windows Server 2012 R2 контроллеры, SMB Signing Disabled и сервисные учётки с паролями, не менявшимися с 2016 года.
Тренд 2025 года - смещение фокуса на AD CS и coercion-техники. Если раньше основной путь к DA шёл через Kerberoasting + credential reuse, то сейчас цепочка «PetitPotam → relay на CA (ESC8) → сертификат DC → DCSync через PKINIT» работает быстрее и оставляет меньше артефактов в классических SIEM-правилах.
Что делать прямо сейчас:
- Запустите PingCastle на своём домене - бесплатно, за 5 минут получите карту рисков.
- Проверьте, отключены ли LLMNR и NBT-NS через GPO.
- Ревизуйте SPN-учётки: сколько из них имеют пароли старше 1 года?
- Проверьте AD CS:
Код:
certipy-ad find -u user@domain.local -p pass -dc-ip -vulnerable -stdout
покажет уязвимые шаблоны.
Если хотя бы один пункт выявит проблему - значит, полноценный пентест Active Directory вашей инфраструктуре необходим. И чем раньше, тем дешевле.
Вопрос к читателям
В последних engagement-ах я всё чаще вижу, что классический Kerberoasting через
Код:
GetUserSPNs.py -request
с RC4-тикетами блокируется AES-only политиками Kerberos. При этом
Код:
Rubeus kerberoast /tgtdeleg
позволяет обойти ограничение, запросив AES-тикет через TGT delegation trick. Какой подход вы используете на engagement-ах, где DC настроен на
только с AES128/AES256? Работает ли у вас связка
Код:
Rubeus kerberoast /enctype:aes256 /tgtdeleg /outfile:hashes.txt
+ Hashcat
для AES-тикетов, и какова реальная скорость перебора на вашем железе по сравнению с RC4 (
)?