Onderzoekers H0j3n en Aniq Fakhrul publiceerden op 24 juli 2026 een werkende exploit die een laaggeprivilegieerde Active Directory (AD)-gebruiker in staat stelt een certificaat voor een domeincontroller te verkrijgen en zich als die machine te authenticeren. Deze kwetsbaarheid, met de codenaam Certighost, maakt misbruik van het feit dat domeincontroller-accounts replicatierechten hebben, waardoor de resulterende Kerberos-credentials via DCSync het krbtgt-secret kunnen ophalen. Microsoft bracht tien dagen eerder een patch uit voor deze kwetsbaarheid in Active Directory Certificate Services (AD CS), geregistreerd als CVE-2026-54121, en classificeerde het als een probleem met onjuiste autorisatie met een CVSS-score van 8.8.
Voor exploitatie is netwerktoegang en een domeinaccount vereist, maar geen administratorrechten of gebruikersinteractie. In tests konden normale domeingebruikersaccounts een computeraccount aanmaken binnen de standaard ms-DS-MachineAccountQuota van 10 of een reeds beheerd account hergebruiken. De keten vereist een Enterprise CA die het kwetsbare pad volgt, inschrijving via de standaard Machine-template en netwerkbereikbaarheid van de CA naar de SMB- en LDAP-listeners van de aanvaller. Organisaties met een Enterprise CA wordt geadviseerd de updates van 14 juli op AD CS-servers te installeren.
De kwetsbaarheid zit in een AD CS-inschrijvingsfallback, bekend als een chase. Wanneer een certificeringsinstantie (CA) geen informatie van een eindentiteit kan verkrijgen, laat het Windows-inschrijvingsprotocol een verzoek toe met cdc (de AD-server om te contacteren) en rmd (het machineobject om op te lossen). De onderzoekers ontdekten dat de CA de door de aanvaller opgegeven cdc-host volgt via Server Message Block (SMB) en Lightweight Directory Access Protocol (LDAP) zonder eerst te verifiëren of het een echte domeincontroller betreft. Een aanvaller kan kwaadaardige Local Security Authority (LSA) en LDAP-diensten draaien, de authenticatie-uitdaging van de CA relayeren naar de echte domeincontroller via Netlogon, en vervolgens het objectSid en dNSHostName van de doel-domeincontroller terugsturen. Een gecontroleerd machineaccount levert de geldige domeinidentiteit die de CA nodig heeft om door te gaan. De CA authenticieert dat account en ondertekent vervolgens de identiteit van de doel-domeincontroller in het certificaat.
De publieke exploit automatiseert deze keten. Het maakt een computeraccount aan of hergebruikt een opgegeven account, start listeners op poorten 445 en 389, relayeert de CA-uitdaging naar de echte domeincontroller via Netlogon, en schrijft een PFX-bestand en Kerberos-credentialcache. De exploit gebruikt Public Key Cryptography for Initial Authentication in Kerberos (PKINIT) om zich als de doel-domeincontroller te authenticeren. De resulterende credential kan accountsecrets opvragen via DCSync, waaronder krbtgt.
Analyse van de binaire bestanden door de onderzoekers toont dat de patch van juli een validatiefunctie toevoegt aan certpdef.dll die controleert of het chase-doel een geldige domeincontroller is. Deze validatie weigert IP-adressen, te lange namen en LDAP-metakarakters, vereist exact één overeenkomend AD-computerobject met een DNS-naam die overeenkomt met het doel en een userAccountControl met SERVER_TRUST_ACCOUNT (8192). Een latere SID-vergelijking voorkomt objectvervanging.
De exploit is getest in een Windows Server 2016 of later forest met een Enterprise CA, de standaard Machine-certificaatsjabloon en de standaard machine-accountquota. Volgens het NVD-record zijn ook Windows Server-versies van 2012 tot en met 2025, inclusief Server Core-edities, kwetsbaar.
Reacties
Geef een reactie
Vereiste velden zijn gemarkeerd met *