Nach Darstellung von Aniq Fakhrul und Muhammad Ali liegt der Kern von CVE-2026-54121 in der Auflösung von Verzeichnisobjekten während des Zertifikat-Enrollments. Über die Antragsattribute cdc und rmd könne ein Angreifer die Zertifizierungsstelle dazu veranlassen, einen vom Angreifer kontrollierten Host nach AD-Identitätsinformationen zu befragen. Die Zertifizierungsstelle akzeptierte dieses Chase-Ziel demnach, ohne zuvor nachzuweisen, dass es sich tatsächlich um den ausgegebenen Domain Controller handelte.
Die Forscher schreiben, dadurch sei es möglich gewesen, LDAP- und LSA-Dienste auf einem kontrollierten Host bereitzustellen, die Zertifizierungsstelle dorthin umzuleiten und Verzeichnisdaten für ein ausgewähltes Zielprinzipal zurückzuliefern. Die Schwachstelle beruhe damit auf einer gebrochenen Vertrauensgrenze im AD-CS-Zertifikat-Enrollment-Prozess, die sie in ihrem Proof of Concept ausgenutzt haben.
Jason Soroko, Senior Fellow bei Sectigo, erklärte gegenüber Dark Reading, Active Directory behandle sein eigenes Verzeichnis als maßgebliche Quelle für Identitäten, und der Zertifikatsdienst bestätige letztlich, was das Verzeichnis angebe. Wer also einen Eintrag im Verzeichnis hinzufügen könne, könne beeinflussen, welche Identität ein Zertifikat behaupte. Soroko ordnet das als Muster ein, das auch in anderen Standardprotokollen auftauche: Eine Instanz mit geringem Vertrauen übergibt einer hoch vertrauenswürdigen Komponente einen Verweis, und diese folgt ihm, ohne die Zielidentität ausreichend zu prüfen.
AD CS ist Microsofts Implementierung einer Public-Key-Infrastruktur, die in Active Directory integriert ist und X.509-Zertifikate für Verschlüsselung, Signaturen, sichere Kommunikation und Authentifizierung ausstellt. Die Forscher betonen, dass Zertifikatvorlagen den Enrollment-Prozess steuern: Sie legen fest, wer ein Zertifikat anfordern darf, wofür es genutzt werden kann, welche Identitätsinformationen enthalten sein müssen und ob die Zertifizierungsstelle Angaben aus dem Antrag akzeptieren darf.
Der von den Forschern demonstrierte Angriff betrifft die zertifikatsbasierte Client-Authentifizierung. Dabei fordert ein Client zunächst ein Zertifikat von einer Enterprise-Zertifizierungsstelle an und legt es später dem Key Distribution Center vor, um Kerberos-Anmeldedaten zu erhalten. Getestet wurde der Angriff laut den Forschern in einer üblichen Unternehmens-Laborumgebung mit Enterprise CA, Windows Server Active Directory, der Standardvorlage für Maschinenzertifikate und einem Domänenkonto mit geringen Rechten.
Der PoC liegt als eigenständiges Python-Skript vor und benötigt laut den Forschern unter anderem Impacket, pyasn1, asn1crypto und dnspython. Das Skript verbindet sich zunächst per LDAP mit dem bereitgestellten Konto und ermittelt Zertifizierungsstelle, Domain Controller, Domain-SID und Domain-GUID. Anschließend erstellt es über ms-DS-MachineAccountQuota ein Maschinenkonto und registriert die nötigen Service Principal Names.
Im nächsten Schritt startet der Angriff lokale LSA- und LDAP-Dienste, die die Authentifizierungsanfrage der Zertifizierungsstelle an den echten Domain Controller weiterreichen, damit der Chase-Endpunkt als gültiges Domänenprinzipal akzeptiert wird. Danach stellt das Skript eine Zertifikatsanforderung mit den Attributen cdc und rmd. Sobald es ein Zertifikat mit Identitätsmaterial des angegriffenen Domain Controllers erhält, darunter SID- und DNS-Namensdaten, nutzt es dieses Zertifikat zur Authentifizierung als Ziel-Domain-Controller und schreibt den resultierenden Anmeldedaten-Cache.
Die Forscher meldeten die Lücke am 14. Mai an das Microsoft Security Response Center; bis zum 22. Mai hatte Microsoft die Schwachstelle untersucht und bestätigt. Der Patch wurde im Juli-Patch-Tuesday in diesem Monat veröffentlicht. Nach Angaben der Forscher ändert das Update zwei Dinge: Es stellt erstens die Authentizität des Chase-Ziels sicher, sodass dieses ein in AD registrierter Domain Controller sein muss, und zweitens die Authentizität des aufgelösten Objekts, damit es der erwarteten Identität entspricht.
Für Organisationen, die das Update nicht sofort einspielen können, nennen die Forscher einen vorübergehenden Workaround: Administratoren können das verwundbare Chase-Verhalten deaktivieren, indem sie das Richtlinien-Flag EDITF_ENABLECHASECLIENTDC löschen. Als vollständige Behebung sei das jedoch nicht zu verstehen; außerdem könne die Maßnahme legitime Enrollment-Abläufe beeinflussen und solle vor dem Einsatz getestet werden.
