Parte: 7 — Red Team y operaciones ofensivas · Fuente: SpecterOps — BloodHound documentation ⏱️ Duración estimada: 100 min · Nivel: Avanzado
Usar BloodHound para modelar Active Directory como un grafo y descubrir rutas de ataque hacia el compromiso de dominio que serían invisibles a simple vista. El alumno recolectará datos con SharpHound/bloodhound-python, importará el grafo y usará las consultas para encontrar el camino más corto de un usuario de bajo privilegio a Domain Admin.
Al finalizar, el alumno podrá:
| # | Tema | Por qué importa |
|---|---|---|
| 1 | Modelo de grafo | Nodos (usuarios/equipos) y aristas (permisos) |
| 2 | Collectors | SharpHound, bloodhound-python, métodos |
| 3 | Aristas abusables | GenericAll, WriteDACL, ForceChangePassword... |
| 4 | Consultas predefinidas | "Shortest path to Domain Admins" |
| 5 | Cypher personalizado | Consultas a medida sobre el grafo |
| 6 | Priorización de rutas | Sigilo vs facilidad |
| 7 | Uso defensivo | El Blue Team también lo usa |
GenericAll). Característica: define un "salto" en la ruta.⚠️ La recolección se realiza en tu AD lab / GOAD. En engagements reales, SharpHound genera telemetría notable (consultas LDAP masivas): planifícalo con OPSEC. Nunca ejecutes collectors contra dominios ajenos sin autorización.
curl -L https://ghst.ly/getbhce | docker compose -f - up (o el método del repo) y accede a la consola web.bash
bloodhound-python -u lowuser -p 'Passw0rd' -d lab.local -ns 10.10.10.10 -c All
o SharpHound.exe -c All desde una máquina del dominio.
3. Importa los archivos zip/JSON en BloodHound y confirma que aparecen usuarios, equipos y grupos.
4. Marca tu punto de partida. Señala tu usuario de bajo privilegio como "Owned".
5. Ejecuta la consulta clave: "Shortest Path to Domain Admins from Owned Principals" y analiza las aristas del camino.
6. Explora aristas. Haz clic en una arista GenericAll y lee la ayuda de abuso (cómo explotarla con net, PowerView, Impacket).
7. Cypher a medida. Escribe una consulta para listar usuarios kerberoastables con camino a DA y prioriza la ruta más sigilosa.
WriteDACL sobre un grupo.Con BloodHound, identifica y documenta una ruta completa desde un usuario de bajo privilegio hasta Domain Admins en tu AD lab, explicando cómo se abusa de cada arista del camino. Criterio de aceptación: presentas el grafo con la ruta resaltada, listas cada arista en orden con la técnica concreta de abuso, y señalas cuál es el "salto" más ruidoso de la cadena.
| Síntoma / mensaje | Causa y cómo arreglar |
|---|---|
| No hay caminos a DA | Datos incompletos; recolecta con -c All y marca "Owned" |
| Importación falla | Versión de collector incompatible con BloodHound CE; usa versiones emparejadas |
| Grafo vacío | Neo4j no conectado o import erróneo; revisa credenciales de Neo4j |
| SharpHound detectado | Recolección ruidosa; usa métodos más selectivos y espaciados |
| Aristas sin sentido | Datos viejos; vuelve a recolectar tras cambios en el lab |
❓ ¿BloodHound explota por mí? No; identifica las rutas y explica cómo abusarlas, pero la explotación la ejecutas tú con otras herramientas (PowerView, Impacket, Rubeus).
❓ ¿CE o legacy? BloodHound CE es la versión actual y recomendada. La legacy sigue documentada, pero CE trae mejor rendimiento y despliegue con Docker.
❓ ¿También sirve para defender? Sí. Los defensores lo usan para encontrar y cortar rutas peligrosas (relaciones ACL excesivas) antes de que un atacante las explote.
Clase 172 — Active Directory: Pass-the-Hash y Pass-the-Ticket
Clase 174 — Compromiso total de dominio: DCSync y Golden Ticket