Active
Controlador de dominio de Active Directory: contraseña de GPP descifrable y Kerberoasting contra Administrator.
Active
| Máquina | SO | Dificultad | IP |
|---|---|---|---|
| Active | Windows | Easy | 10.10.10.100 |
A tener en cuenta...
Resumen
Active es un Active Directory muy didáctico y de los que mejor enseñan dos técnicas imprescindibles en entornos Windows: una contraseña olvidada en una GPP (Group Policy Preferences) dentro de un recurso compartido accesible, y Kerberoasting contra la cuenta de Administrator. De lectura de un XML a Domain Admin.
Vulnerabilidad
GPP cpassword (MS14-025)
Las Group Policy Preferences permitían guardar contraseñas en ficheros XML del SYSVOL, cifradas con AES. El problema: Microsoft publicó la clave, así que ese cifrado es reversible por cualquiera. Quien pueda leer el recurso SYSVOL/Replication puede descifrar el cpassword y obtener credenciales válidas.
Kerberoasting
En Kerberos, cualquier usuario del dominio puede pedir un ticket de servicio (TGS) para una cuenta que tenga un SPN asignado. Ese ticket va cifrado con el hash NTLM de la cuenta de servicio, así que se puede crackear offline. Si la cuenta con SPN es Administrator, crackear su contraseña es Domain Admin.
Reconocimiento
Escaneo completo de puertos
| Puerto | Servicio | Versión |
| 53 | domain | Microsoft DNS |
| 88 | kerberos | Microsoft Windows Kerberos |
| 139/445 | smb | Microsoft-DS |
| 389/636 | ldap | Active Directory LDAP |
| 3268 | ldap | Global Catalog |
DNS, Kerberos, LDAP y SMB: el retrato robot de un controlador de dominio (dominio active.htb).
Enumeración
Listamos los recursos compartidos SMB sin credenciales
El recurso Replication es accesible de forma anónima. Dentro está el SYSVOL replicado, y ahí es donde viven las GPP. Lo recorremos buscando el Groups.xml
Ahí está el cpassword. Lo desciframos con la clave pública de Microsoft
Credenciales de dominio: SVC_TGS / GPPstillStandingStrong2k18.
Explotación
Las credenciales son válidas en el dominio y ya nos dan acceso a los recursos del usuario SVC_TGS, incluida la flag de usuario (su carpeta en el recurso Users)
Con un usuario de dominio en la mano, pasamos a por el dominio completo.
Escalada de privilegios
Con un usuario cualquiera ya podemos hacer Kerberoasting. Pedimos los tickets de las cuentas con SPN
¡La cuenta con SPN es Administrator! Crackeamos su ticket offline con hashcat (o john)
Ya tenemos la contraseña del administrador del dominio. Abrimos shell como SYSTEM en el DC con psexec
Flags
Cómo se arregla
- Eliminar las GPP con contraseñas: aplicar el parche MS14-025 y borrar los XML antiguos del SYSVOL que contengan cpassword; nunca guardar contraseñas en GPP.
- Restringir el acceso a los recursos: el SYSVOL/Replication no debería permitir lectura anónima de ficheros sensibles.
- Blindar las cuentas con SPN: usar contraseñas largas y aleatorias (idealmente cuentas gMSA) para que el Kerberoasting sea inviable; jamás poner un SPN sobre la cuenta de Administrator.
- Monitorizar peticiones TGS: un pico de solicitudes de tickets de servicio es una señal clara de Kerberoasting.
Conclusiones
Active condensa dos de los ataques más rentables en AD: las GPP con contraseñas descifrables (un fallo que, pese a tener parche desde 2014, sigue apareciendo en auditorías) y el Kerberoasting, que convierte a cualquier usuario del dominio en cazador de hashes de cuentas de servicio.
La moraleja: en Active Directory, un simple recurso compartido mal protegido y una cuenta de servicio con contraseña débil son suficientes para pasar de cero a Domain Admin.