Descubre Noticias de Ciberseguridad en nuestro TecnetBlog

BloodHound: Herramienta para hacer Pentesting a Active Directory

Escrito por Adan Cuevas | Jan 10, 2025 5:43:01 PM

Si trabajas en ciberseguridad o simplemente sientes curiosidad por cómo los hackers (y los expertos de seguridad) identifican vulnerabilidades en las grandes redes corporativas, probablemente has oído hablar de BloodHound. Pero, si no, aquí te lo explicamos: ¿qué es exactamente esta herramienta, por qué es tan popular en las auditorías de seguridad y por qué se ha convertido en un "must" para los red teams y los blue teams?

 

¿Qué es BloodHound y para qué sirve?

 

BloodHound es una herramienta de pentesting (pruebas de penetración) que permite a los profesionales de seguridad mapear y analizar entornos Active Directory para encontrar posibles rutas de ataque y vectores de escalamiento de privilegios.

Active Directory (AD) es una tecnología de Microsoft utilizada por la mayoría de las empresas para gestionar usuarios, equipos, permisos y políticas de seguridad dentro de la red. Debido a su complejidad y al gran número de relaciones entre usuarios, grupos y máquinas, encontrar configuraciones inseguras o rutas de ataque de manera manual es casi imposible… ¡Y ahí es donde entra BloodHound!

BloodHound ayuda a los pentesters (hackers éticos) a descubrir esas rutas ocultas que podrían ser aprovechadas por un atacante para moverse lateralmente por la red y, en última instancia, comprometer cuentas con altos privilegios, como Domain Admins.

 

¿Cómo funciona BloodHound?

 

BloodHound utiliza un enfoque basado en grafos para visualizar las relaciones y permisos dentro de un dominio Active Directory. Para que lo entiendas mejor, imagina un grafo como un gran mapa en el que cada usuario, máquina y grupo es un punto (nodo) conectado por líneas que representan permisos, accesos y relaciones.

Por ejemplo:

  1. Usuario A tiene permisos de administración sobre Máquina X.

  2. Máquina X tiene almacenadas las credenciales de Usuario B.

  3. Usuario B es un administrador de dominio.

 

Gracias a BloodHound, los pentesters pueden ver este camino en cuestión de segundos y encontrar rutas de ataque que les permitirían escalar privilegios desde un usuario común hasta un administrador de dominio. La herramienta utiliza Neo4j, una base de datos de grafos, como su almacén de datos de respaldo.

Neo4j permite a BloodHound almacenar y consultar grandes volúmenes de datos de manera eficiente y, lo más importante, visualizar esas relaciones en forma de grafos. Esto hace que los profesionales de seguridad puedan ver rutas de ataque ocultas en entornos complejos de manera mucho más rápida y sencilla.

 

Ejemplo Bloohound

 

Podría interesarte leer: Pentesting vs Análisis de Vulnerabilidades

 

¿Quiénes usan BloodHound?

 

BloodHound es utilizado tanto por equipos ofensivos (Red Team) como por equipos defensivos (Blue Team). Pero… ¿qué significa esto y cómo lo utilizan cada uno?

 

Red Team: Los atacantes éticos

 

El Red Team es el equipo que simula los ataques reales que podrían realizar los hackers malintencionados. Su objetivo es identificar las debilidades de la red antes de que lo hagan los atacantes reales.

Los miembros del Red Team utilizan BloodHound para:

  1. Encontrar rutas de ataque ocultas dentro de Active Directory.

  2. Identificar configuraciones inseguras.

  3. Escalar privilegios desde una cuenta estándar hasta una cuenta de administrador de dominio.

 

Caso de uso típico del Red Team:

 

  1. El Red Team compromete la cuenta de un trabajador con bajos privilegios.

  2. Usa SharpHound (la herramienta de recolección de datos de BloodHound) para mapear el dominio.

  3. Descubre que el trabajador comprometido tiene permisos sobre una máquina crítica.

  4. Desde esa máquina, accede a otras cuentas hasta comprometer el dominio completo.

 

En resumen, para el Red Team, BloodHound es un mapa del tesoro que les muestra las rutas más efectivas para comprometer una red corporativa.

 

Blue Team: Los defensores de la red

 

Por otro lado, el Blue Team es el equipo encargado de proteger la red y prevenir ataques. Utilizan BloodHound para auditar su Active Directory y detectar posibles configuraciones inseguras antes de que alguien las explote.

El Blue Team utiliza BloodHound para:

 

  1. Visualizar las relaciones y permisos dentro de AD.

  2. Identificar usuarios y grupos con permisos excesivos.

  3. Corregir configuraciones inseguras.

  4. Eliminar rutas de ataque que podrían ser explotadas por un atacante.

 

Caso de uso típico del Blue Team:

 

  1. El Blue Team ejecuta BloodHound y analiza los grafos generados.

  2. Identifica que ciertos usuarios tienen permisos administrativos innecesarios sobre máquinas críticas.

  3. Revoca esos permisos y fortalece las políticas de seguridad.

  4. Reduce drásticamente las posibles rutas de ataque.

 

En resumen, para el Blue Team, BloodHound es como un sistema de alerta temprana que les permite cerrar puertas antes de que los atacantes las encuentren.

 

Conoce más sobre: ¿Cuál es la Importancia de un Red Team y Blue Team en Ciberseguridad?

 

Cómo recolecta BloodHound la información de Active Directory?

 

La información que utiliza BloodHound se recolecta mediante un cliente llamado SharpHound, que es una herramienta escrita en C# y que puede ejecutarse directamente en la red objetivo.

 

Modos de recolección de SharpHound:

 

  1. LDAP: Recolecta información directamente desde el servicio LDAP de Active Directory.

  2. SMB: Recolecta datos de permisos y sesiones compartidas a través del protocolo SMB.

  3. Session: Identifica qué usuarios tienen sesiones activas en qué máquinas.

 

Una vez que SharpHound termina de recolectar los datos, se cargan en la base de datos de Neo4j, que es una base de datos de grafos utilizada por BloodHound para visualizar las relaciones y rutas de ataque.

 

¿Qué tipo de ataques puede identificar BloodHound?

 

BloodHound es capaz de identificar múltiples vectores de ataque en Active Directory. Algunos de los más comunes son:

1. KerberoastingAtaque que permite a un atacante obtener el hash de la contraseña de cuentas de servicio configuradas en AD. Estas cuentas suelen tener privilegios elevados.

2. Pass-the-Hash: Permite a un atacante autenticarse en una máquina utilizando el hash de una contraseña sin necesidad de conocer la contraseña en texto plano.

3. Escalamiento de privilegios: BloodHound identifica usuarios que tienen permisos administrativos sobre otras cuentas o máquinas, lo que permite escalar privilegios dentro de la red.

4. Movimientos laterales: Permite identificar máquinas y cuentas a las que un usuario comprometido tiene acceso, lo que facilita el movimiento lateral por la red.

 

¿Por qué BloodHound es clave para las auditorías de seguridad?

 

Para los pentesters y los profesionales de ciberseguridad, BloodHound es una herramienta esencial en las auditorías de seguridad, especialmente en redes corporativas basadas en Active Directory. Gracias a su enfoque automatizado y visual, BloodHound permite:

 

  1. Ahorrar tiempo al analizar grandes redes.

  2. Identificar vulnerabilidades ocultas.

  3. Detectar configuraciones inseguras que podrían pasar desapercibidas manualmente.

  4. Prevenir ataques antes de que ocurran.

 

Podría interesarte leer: Herramientas de Pentesting para Principiantes

 

Conclusión: BloodHound, una herramienta para ver lo invisible

 

BloodHound es una herramienta imprescindible tanto para los red teams que buscan comprometer una red, como para los blue teams que buscan protegerla. Su capacidad para mapear entornos Active Directory y encontrar rutas de ataque ocultas la convierte en un recurso valioso para cualquiera que trabaje en ciberseguridad. ¿Crees que tu organización está bien protegida contra las rutas de ataque ocultas?