Depth Security в отчётах за 2026 год продолжают находить хосты, уязвимые к CVE-2025-33073 (CVSS 8.8), - включая контроллеры домена и Tier-0 серверы. Дословно: «Whether its enterprise domain controllers, tier-zero servers, or random workstations, we are consistently finding hosts still affected by this issue on nearly every engagement». И вот что забавно: даже включённый SMB signing не спасает - NTLM Reflection позволяет cross-protocol relay на LDAP и AD CS мимо всех подписей.
NTLM coercion атаки в Active Directory не просто живы. Они мутируют быстрее, чем корпоративные команды успевают закрывать бреши. Здесь - полная картина: механика, выбор вектора, практическая эксплуатация и реальные слепые зоны SOC, которые мы видим на проектах раз за разом.
Место coercion в kill chain атаки на Active Directory
Принудительная аутентификация NTLM - не самостоятельная атака, а усилитель. Между «есть доменная учётка» и «есть Domain Admin» coercion - то самое недостающее звено. В терминах MITRE ATT&CK цепочка выглядит так:- Initial Access - фишинг, эксплуатация внешнего сервиса, купленные или выданные credentials
- Credential Access - coercion заставляет целевую машину аутентифицироваться на подконтрольном сервере. Adversary-in-the-Middle (T1557)
- Privilege Escalation - relay захваченной аутентификации на AD CS, LDAP или SMB. Получение сертификата или привилегированного доступа
- Lateral Movement - Pass the Hash (T1550.002), Remote Services (T1021)
- Credential Dumping - DCSync через
secretsdump.py(T1003, OS Credential Dumping)
corp\testuser вправе вызывать RPC-функции на любом доменном хосте - это by design. Microsoft отказалась признать это уязвимостью. По документам - всё штатно. На практике - вектор до DA за 15 минут.Контекст применения - исключительно внутренний пентест или red team-кампания с уже полученным плацдармом в сети. На внешнем периметре coercion через RPC нерелевантен: нужен прямой сетевой доступ к RPC-портам целевого хоста.
Как работает принудительная аутентификация NTLM
RPC-функции под капотом coercion-атак
RPC (Remote Procedure Call) - фундаментальный механизм межпроцессного взаимодействия в Windows. Куча протоколов используют RPC как транспорт: MS-EFSRPC (шифрование файлов), MS-RPRN (печать), MS-DFSNM (распределённая файловая система), MS-EVEN (журнал событий).Проблема в том, что ряд RPC-функций принимают UNC-путь (формат
\\IP\Share\path) в качестве параметра. Когда сервер обрабатывает такой вызов, он инициирует обратное подключение к указанному адресу - с автоматической аутентификацией от учётной записи компьютера. Атакующий подставляет свой IP вместо легитимного ресурса и получает аутентификацию на блюдечке.По данным Unit 42 (Palo Alto Networks), задокументировано 16 работающих функций в пяти протоколах, пригодных для authentication coercion. При этом исследователи прямо говорят: более 240 функций ещё не протестированы и потенциально эксплуатируются тем же способом. Двести сорок. Непротестированных. Это не теоретическая проблема - это арсенал, который раскрывается по мере блокировки стандартных векторов.
Три режима принудительной аутентификации NTLM
Поведение при coercion зависит от формата адреса, который подставляет атакующий. Для выбора стратегии relay это критически важно:| Формат адреса | Протокол | Тип аутентификации | Возможности relay |
|---|---|---|---|
IP-адрес (\\10.0.0.5\share) | SMB | NTLM | SMB, HTTP, LDAP, MSSQL (с ограничениями по signing) |
FQDN (\\dc01.corp.local\share) | SMB | Kerberos | Захват TGT при unconstrained delegation (T1558) |
Короткое имя (\\attacker\share) | HTTP (WebDAV) | NTLM | LDAP, HTTP, AD CS - самый гибкий вариант |
Третий режим - через WebDAV - на внутреннем пентесте особенно интересен. HTTP-аутентификация не защищена SMB signing и спокойно перенаправляется на LDAP или веб-интерфейс AD CS. Условие: на целевой машине должна работать служба WebClient. На рабочих станциях она часто включена; на серверах - по умолчанию нет. Проверяется наличием пайпа
DAVRpcServicePipe: ls \\target\pipe\DAVRpcServicePipe.Техники coercion и их статус в 2026
PetitPotam - MS-EFSRPC
CVE-2021-36942 - Windows LSA Spoofing Vulnerability, CVSS 7.5 (HIGH), векторAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N. Включена в CISA KEV с пометкой ransomware-связанная. Описание CISA: «уязвимость позволяет неаутентифицированному атакующему вызвать метод на интерфейсе LSARPC и принудить контроллер домена аутентифицироваться на другом сервере через NTLM».Автор - исследователь Gilles Lionel (topotam), PoC опубликован в июле 2021 года. Эксплуатирует функции MS-EFSRPC (
EfsRpcOpenFileRaw и аналоги) через named pipe \pipe\efsrpc или \pipe\lsarpc поверх SMB (445/TCP).Статус в 2026: Microsoft патчем KB5005033 заблокировала часть методов через интерфейс LSARPC без аутентификации. Но аутентифицированный coercion через интерфейс EFSRPC (named pipe
\pipe\efsrpc) по-прежнему работает с любой доменной учёткой. На практике: есть low-priv credentials - PetitPotam остаётся рабочим вектором в большинстве сред.Инструмент:
petitpotam.py (активно поддерживается сообществом).PrinterBug / SpoolSample - MS-RPRN
Эксплуатирует функциюRpcRemoteFindFirstPrinterChangeNotificationEx службы Print Spooler. Описана Lee Christensen (SpecterOps) в 2018 году; Microsoft не присвоила CVE, считая поведение by design. Не путать с PrintNightmare (CVE-2021-34527, CVSS 8.8, HIGH, CISA KEV) - это отдельная RCE-уязвимость через RpcAddPrinterDriverEx того же сервиса.Статус в 2026: Print Spooler всё чаще отключён на серверах по рекомендациям Microsoft. На рабочих станциях - обычно включён. Проверяется через
ls \\target\pipe\spoolss.Ограничение: отключение Spooler блокирует только этот вектор. Все остальные coercion-техники продолжают работать - это как заколотить одно окно в доме с двадцатью.
DFSCoerce - MS-DFSNM
Опубликована исследователем Filip Dragović (Wh04m1001) как ответ на блокировку PetitPotam и отключение Print Spooler. Использует протокол распределённой файловой системы.По данным CERT/CC: «Передавая запрос NTLM-аутентификации с контроллера домена на веб-службу Certificate Authority Web Enrollment, злоумышленник может получить сертификат, который используется для получения TGT».
Статус в 2026: работает при включённой службе DFS. На контроллерах домена DFS включена часто - что логично, но неприятно для защитников.
Редкие RPC-интерфейсы: тренд, которого нет в русскоязычных источниках
По данным Unit 42, в марте 2025 года зафиксирована реальная атака на организацию в сфере здравоохранения: злоумышленники использовали интерфейс MS-EVEN (remote event logging) для authentication coercion. Этот интерфейс не мониторится стандартными средствами - за 30 дней до инцидента ни одна машина в сети организации не использовала данный протокол. Cortex XDR (Palo Alto Networks) сгенерировал алерт «Possible authentication coercion» именно на этом нетипичном RPC-вызове.Unit 42 формулирует тренд прямо: «Attackers are now leaning towards exploiting rare, unseen RPC functions to avoid detection by traditional defense mechanisms». Защитники пишут правила под PetitPotam и PrinterBug - атакующие переключаются на менее известные opnum. Классика кошки-мышки.
Инструмент: Coercer (активно поддерживается) автоматизирует перебор всех известных coercion-функций во всех протоколах.
Когда что применять: decision tree для пентестера
| Условие среды | Рекомендуемая техника | Инструмент |
|---|---|---|
| Print Spooler включён | PrinterBug | SpoolSample.exe, printerbug.py |
| Spooler выключен, DFS доступна | DFSCoerce | dfscoerce.py |
| Spooler и DFS недоступны | PetitPotam (auth) | petitpotam.py |
| Стандартные вектора заблокированы RPC-фильтрами | Редкие RPC (MS-EVEN и др.) | Coercer |
| WebClient запущен на цели | Любая техника + HTTP listener | ntlmrelayx.py на HTTP |
| Нужен Kerberos TGT (unconstrained delegation) | Указать FQDN вместо IP | krbrelayx.py |
Алгоритм на реальном проекте (grey box, есть low-priv creds):
- Проверить Spooler:
ls \\target\pipe\spoolss- если доступен, начать с PrinterBug - Нет Spooler - проверить DFS:
rpcdump.py @target | grep DFSNM - Нет DFS - PetitPotam с аутентификацией
- PetitPotam заблокирован - запустить
Coercerдля перебора всех интерфейсов - Параллельно проверить WebClient:
ls \\target\pipe\DAVRpcServicePipe - Найти AD CS с web enrollment:
nxc ldap dc01.corp.local -u user -p pass -M adcs - Сформировать relay-list хостов без SMB signing:
nxc smb 10.0.0.0/24 -u user -p pass --gen-relay-list targets.txt
CVE-2025-33073: NTLM Reflection меняет правила
CVE-2025-33073 - Improper Access Control в Windows SMB, CVSS 8.8 (HIGH), векторAV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, CWE-284 (Improper Access Control). Описание CISA: «злоумышленник может выполнить специально сформированный скрипт, чтобы принудить машину жертвы подключиться к атакующей системе по SMB и аутентифицироваться».Суть: при NTLM-аутентификации на локальной машине сервер сообщает клиенту через флаг «Negotiate Local Call», что полноценный challenge-response не нужен. Клиент (lsass.exe, работающий как SYSTEM) копирует свой токен в серверный контекст. Атакующий регистрирует DNS-запись специфического формата в AD DNS - это доступно всем Authenticated Users по умолчанию - и через coercion заставляет
LsapCheckMarshalledTargetInfo считать подключение локальным. Результат: SYSTEM-токен на целевой машине.Cross-protocol relay: обход SMB signing
Классическая мантра «включите SMB signing - и relay не работает» здесь не срабатывает.Это отдельный примитив от классического cross-protocol relay (например, SMB→AD CS web enrollment / ESC8), который работает и без этого CVE. Оба вектора могут комбинироваться в одной цепочке атаки.
При reflection-атаке флаг «Negotiate Local Call» позволяет обойти стандартный challenge-response, что отличает её от классического relay. На Exploit-DB опубликован PoC: EDB-52330 (автор Mohammed Idrees Banyamer, remote/windows, «Windows 11 SMB Client - Privilege Escalation & Remote Code Execution»).
Предпосылки:
- Возможность добавить DNS-запись в AD DNS (по умолчанию - все Authenticated Users) или LLMNR/NBNS poisoning в broadcast-домене
- Возможность выполнить coercion (любая из техник выше)
- Отсутствие патча CVE-2025-33073 на целевом хосте
CVE-2025-24054: утечка хешей NTLM через файловую систему
CVE-2025-24054 - External Control of File Name or Path, CVSS 6.5 (MEDIUM), векторAV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N, CWE-73. Добавлена в CISA KEV 17 апреля 2025 года.В отличие от RPC coercion, эта уязвимость эксплуатируется через специально сформированные файлы
.library-ms. При минимальном взаимодействии пользователя - предпросмотр файла в проводнике, переход по ссылке - Windows автоматически инициирует NTLM-аутентификацию к серверу, указанному в файле. Пользователь даже не открывал файл, а хеш уже улетел.CVE-2025-24054 продолжает тренд, заданный предшествующей CVE-2024-43451 (NTLM Hash Disclosure Spoofing, CVSS 6.5), которая тоже эксплуатировалась в реальных атаках. На Exploit-DB опубликовано три PoC: EDB-52280 (hyp3rlinx, local), EDB-52480 (дата публикации в Exploit-DB: 2026-02-11) и EDB-52478 (дата публикации в Exploit-DB: 2026-02-04) (beatrizfn, remote) - даты указаны по источнику как есть.
Отличие от RPC coercion: не требует сетевого доступа к портам цели. Работает через фишинговый вектор - применимо как для внутреннего, так и для внешнего пентеста. Это единственная техника в обзоре, которая бьёт через периметр.
Практика: coercion → relay → захват домена
Требования к окружению
- ОС атакующего: Kali Linux 2025.x+ (или любой Linux с Python 3.10+)
- Инструменты: Impacket (ntlmrelayx.py, secretsdump.py, rpcdump.py), petitpotam.py, Coercer, NetExec (nxc)
- Сетевые условия: доступ к целевой подсети (порты 135, 445, 389, 80/443 для AD CS)
- Credentials: любая доменная учётка (low-priv)
- Сценарий: grey box - заказчик выдал
corp\testuser:Password123
Шаг за шагом: от разведки до DA
Шаг 1. Разведка. Определить AD CS с web enrollment и сформировать список целей без SMB signing:
📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом One Level или выше
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме
Что засветится в SIEM и где слепые зоны детекта
Coercion-атаки оставляют следы, но не там, где SOC привык смотреть.Что детектируется стандартными средствами:
- Event ID 4624 (Logon Type 3) от машинной учётки DC на нехарактерный хост - аномалия, но в крупных доменах Logon Type 3 генерирует такой объём событий, что без baseline фильтрация превращается в пытку
- Sigma-правила для T1550.002:
win_susp_ntlm_auth.yml(подозрительная NTLM-аутентификация),win_security_potential_pass_the_hash.yml. Для T1557:zeek_dns_kerberos_coercion_via_dns_object_spn_spoofing.yml(детекция coercion через DNS-манипуляции) - NTLMv1 downgrade: правило
win_system_lsasrv_ntlmv1.ymlловит использование устаревшего NTLMv1, которое часто сопровождает relay - Cortex XDR (Palo Alto Networks) - встроенный алерт «Possible authentication coercion», сработавший в кейсе Unit 42 с MS-EVEN
- Редкие RPC-вызовы (MS-EVEN и аналоги) - правила заточены под MS-EFSRPC и MS-RPRN. Unit 42 подтверждает: стандартные средства пропускают вызовы через нетипичные opnum
- Регистрация DNS-записей для NTLM Reflection - легитимное действие для Authenticated Users. Мониторинг всех DNS-обновлений в AD DNS настроен у единиц
- Certificate enrollment на AD CS - по данным Cayosoft, «standard security tools miss the authentication and certificate enrollment patterns that indicate an active PetitPotam identity attack». Запрос сертификата от машинной учётки через web enrollment выглядит штатно
- Cross-protocol relay - SOC мониторит SMB-аутентификацию, а relay уходит на HTTP/LDAP. Разные протоколы, разные логи, разные команды - и между ними пробел, в который влезает вся атака
Защитные меры: что работает, а что - театр безопасности
| Мера | Эффективность | Комментарий |
|---|---|---|
| SMB signing на всех хостах | Частично | Блокирует классический SMB relay. Не защищает от NTLM Reflection (CVE-2025-33073) и cross-protocol relay через HTTP |
| Extended Protection for Authentication (EPA) | Высокая | Привязка аутентификации к каналу. Критично для LDAP и AD CS |
| Отключение NTLM (Kerberos-only) | Максимальная | Убирает проблему в корне. Microsoft ограничила поддержку NTLMv1 в Windows 11 24H2 и Server 2025 (NTLMv1 отключён по умолчанию, NTLM в целом задепрекейтен). NTLMv2 пока поддерживается, но курс на постепенный отказ от NTLM объявлен |
| NETSH RPC filter | Высокая для coercion | Блокирует вызов опасных RPC-функций по UUID на уровне ОС |
| Отключение Print Spooler | Низкая (изолированно) | Закрывает только PrinterBug. Десятки других векторов остаются |
| Блокировка портов 445/139/135 | Низкая | Обходится через DCERPC на динамических портах |
| Патчи CVE-2025-33073, CVE-2025-24054 | Обязательно | Не заменяет архитектурные меры, но закрывает конкретные reflection-примитивы |
| Отключение HTTP на AD CS | Высокая для ESC8 | Устраняет самый опасный relay-target, но не все |
NETSH RPC filter заслуживает отдельного разговора. Все coercion-техники объединяет общий набор UUID RPC-интерфейсов. Фильтр блокирует вызов функций по UUID на уровне RPC runtime Windows - без нарушения работы легитимных сервисов, если список UUID корректен. Подробный разбор с конкретными UUID и тестированием опубликован в статье USSC на Хабре. Ключевое требование: список UUID необходимо поддерживать в актуальном состоянии, добавляя новые интерфейсы по мере их обнаружения. Забросил обновление - получил новый вектор через полгода.
По данным Verizon 2025 DBIR (ссылка от SentinelOne), 31% всех утечек за последнее десятилетие связаны с кражей учётных данных. NTLM coercion - один из самых эффективных методов такой кражи в корпоративных Windows-средах. И пока NTLM жив - а он будет жив в гибридных инфраструктурах ещё годы - coercion остаётся стандартным шагом на каждом внутреннем пентесте.
Формула на бумаге понятна - coercion + relay = DA. Но по-настоящему механика ощущается только когда сам прогоняешь цепочку на стенде. Готовый сценарий с coercion и relay можно отработать на HackerLab.pro - там есть лабы по AD-атакам в нескольких категориях (web, crypto, pwn, forensics и другие), нужна регистрация, после неё доступны задачи всех уровней.
По опыту, NTLM relay стабильно встречается в отчётах по внутренним пентестам AD-инфраструктур. И почти каждый раз заказчик удивляется: «мы же включили SMB signing». Включили - на серверах. А на рабочих станциях нет. Или включили signing, но не настроили EPA на AD CS. Или закрыли всё, но не накатили патч CVE-2025-33073 - и Reflection проходит мимо всех подписей.
Проблема не в отсутствии защитных механизмов. Microsoft дала всё необходимое. Проблема в том, что coercion требует от защитников одновременного закрытия десятков RPC-интерфейсов, нескольких протоколов и всех уровней аутентификации. Пропустил один - модель рассыпается. Атакующему достаточно одного работающего вектора из десятков.
240+ непротестированных RPC-функций, о которых говорит Unit 42, - это арсенал, который будет раскрываться по мере блокировки стандартных векторов. Для пентестера это значит одно: инструменты-перебиратели вроде Coercer станут нормой, а ручной запуск одного PetitPotam уйдёт в прошлое. Кто до сих пор ограничивается только им - оставляет деньги на столе.