11 - Active Directory (AD)

¿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).