¿Qué es AD?
Es un servicio de directorio basado en protocolos como LDAP y x.500, usado para la gestión centralizada de usuarios, equipos, recursos, políticas y más. La cantidad de servicios en AD a menudo tienen configuraciones erróneas y vulnerabilidades explotables.
Por qué atacar AD
- Objetivos comunes en pruebas de penetración:
- Escalar privilegios a Domain Admin.
- Acceder a recursos específicos (bases de datos, correos, archivos).
- Comprometer dominios completos o dominios confiados.
- Escenarios reales:
- Kerberoasting: Recuperar y crackear tickets TGS.
- Password Spraying: Intentar contraseñas comunes respetando políticas de bloqueo.
- Explotar relaciones de confianza: Usar membresías anidadas para moverse lateralmente entre dominios.
Herramientas y enfoques principales
Enumeración
Herramientas: BloodHound, Kerbrute, Responder, enum4linux, comandos nativos (PowerShell, Sysinternals)
Ataques Comunes
- Kerberoasting: Explotar SPNs para obtener hashes de contraseñas de cuentas de servicio.
- Password Spraying: Intentar contraseñas débiles en grandes conjuntos de usuarios.
- Responder: Capturar hashes NetNTLMv2 en redes mal configuradas.
- Pass-the-Hash/Ticket: Usar hashes o tickets capturados para autenticarse sin contraseñas.
Flujo de trabajo
- Acceso inicial: escanear servicios expuestos (SMB, LDAP, RDP), enumerar usuarios y políticas con enum4linux.
- Enumeración de AD: mapear relaciones y privilegios con BloodHound; buscar SPNs con GetUserSPNs.
- Ataques dirigidos: crackear hashes (Hashcat, John); movimientos laterales con Pass-the-Ticket / Pass-the-Hash.
- Escalada de privilegios: permisos en grupos clave (Domain Admins, Enterprise Admins); relaciones de confianza entre dominios.
- Objetivos finales: comprometer controladores de dominio; extraer credenciales (DCSync, Dump SAM/LSASS).