🛡️ Introducción a la Enumeración y Ataques en Active Directory (AD)
Active Directory (AD) es un servicio de directorio creado por Microsoft (desde Windows Server 2000) que permite gestionar centralizadamente:
-
👤 Usuarios
-
💻 Equipos
-
🗂️ Grupos
-
📁 Shares
-
🧩 Group Policies
-
🔗 Trusts
Está basado en LDAP y X.500, y proporciona:
-
🔐 Autenticación
-
🧾 Contabilización
-
🛂 Autorización
👉 Es la columna vertebral de casi todas las redes empresariales Windows.
🎯 ¿Por qué debemos preocuparnos por AD?
-
Microsoft AD posee ~43% del mercado de Identity & Access Management.
-
En 2 años, Microsoft ha tenido 2000+ vulnerabilidades CVE.
-
AD es complejo → fácil de misconfigurar → terreno fértil para atacantes.
Los atacantes aprovechan:
-
🔑 Permisos mal configurados
-
🔓 Vulnerabilidades de Windows
-
🤝 Servicios demasiado expuestos
-
🧱 Falta de hardening
🧭 ¿Qué aprenderemos en este módulo?
-
Enumeración usando herramientas nativas: Sysinternals, WMI, DNS, PowerShell.
-
Ataques comunes:
-
💥 Password Spraying
-
🔥 Kerberoasting
-
🎣 Responder (LLMNR/NBT-NS Poisoning)
-
🧠 BloodHound
-
🧪 Kerbrute
-
-
Pivoting, movimiento lateral y escalada dentro del dominio.
También aprenderemos a trabajar:
-
Desde Windows o Linux
-
Con herramientas completas o “living off the land” (sin herramientas adicionales)
🏴☠️ ¿Por qué AD importa en una intrusión?
Aunque no exista una vulnerabilidad remota clara, si estamos dentro del entorno AD, podemos:
-
🧗 Escalar privilegios
-
🔄 Movernos lateralmente
-
🕸️ Aprovechar relaciones peligrosas
-
📬 Acceder a buzones, DBs, servers críticos
-
👑 Comprometer completamente el dominio
🧨 Escenarios reales
🔥 Escenario 1 – Esperando al Admin
-
Se compromete un host → acceso SYSTEM.
-
Se enumeran SPNs → Kerberoasting.
-
Se crackea 1 TGS usando Hashcat + regla d3ad0ne.
-
Se obtiene acceso a shares → se colocan SCF files.
-
Responder captura un NetNTLMv2… ¡de un Domain Admin!
-
→ Dominio comprometido.
🔥 Escenario 2 – Password Spraying “de noche”
-
SMB NULL session → lista de usuarios + password policy.
-
Password spraying seguro → Spring@18 funciona.
-
El usuario tiene local admin en varias máquinas.
-
Se detecta una sesión de Domain Admin → Rubeus → robo de TGT.
-
Pass-the-ticket → DA.
-
Trusts débiles → tomar dominio adicional.
🔥 Escenario 3 – Atacando a ciegas
-
No hay vía clara → Kerbrute para validar usuarios.
-
~516 usuarios válidos encontrados.
-
Password spraying suave → Welcome2021.
-
Todos los usuarios tienen acceso RDP a una máquina.
-
DomainPasswordSpray desde dentro → Fall2021.
-
Un usuario tiene GenericAll sobre Enterprise Key Admins.
-
Se encadena con Shadow Credentials → NT hash del DC.
-
→ DCSync para obtener todas las contraseñas del dominio.
🚀 Conclusión: “This Is The Way”
-
Enumerar siempre → iterativo.
-
Dibujar el entorno → topología, trusts, relaciones.
-
Entender el por qué de las misconfiguraciones.
-
Poder trabajar con o sin herramientas.
-
Ser creativo: AD es enorme y siempre hay otra vía.
Este módulo te llevará por:
-
Mini labs de AD
-
Hosts Windows y Linux preparados
-
Uso de BloodHound, RDP, SSH, Kerbrute, Responder, etc.
🧰 Toolkit del curso
-
Herramientas en
C:\Tools\ -
PowerShell AD Module se carga automáticamente
-
RDP con:
xfreerdp /v:<MS01_IP> /u:htb-student /p:Academy_student_AD!
-
Herramientas en PATH o
/opt -
SSH:
ssh htb-student@<ATTACK01_IP> -
También accesible por RDP para BloodHound GUI:
xfreerdp /v:<ATTACK01_IP> /u:htb-student /p:HTB_@cademy_stdnt!
✔️ Consejos finales
-
Genera tus propios binarios para evitar malware oculto.
-
Documenta todo.
-
Sé persistente: AD es complejo, pero con práctica todo encaja.