Saltar a contenido

BloodHound 8.0 with OpenGraph Cheatsheet

BloodHound 8.0 con Hoja de Referencia de OpenGraph

Descripción General

BloodHound 8.0 es una actualización importante de la herramienta de gestión de rutas de ataque de código abierto ampliamente utilizada. La característica nueva más significativa es OpenGraph, que expande las capacidades de BloodHound más allá de Active Directory para mapear rutas de ataque de identidad en varios sistemas como GitHub, Snowflake y más.

Características Clave de BloodHound 8.0

  • OpenGraph: Un nuevo modelo de gráfico extensible que permite la ingestión y análisis de datos de cualquier fuente, no solo de Active Directory.
  • Rutas de Ataque Expandidas: Visualizar y analizar rutas de ataque en múltiples plataformas y servicios.
  • Usabilidad Mejorada: Acceso más rápido y claro a la información con una interfaz de usuario mejorada.
  • Extensibilidad Mejorada: Más fácil de agregar nuevas fuentes de datos y primitivas de ataque.
  • Impulsado por la Comunidad: La comunidad de BloodHound puede crear y compartir recopiladores y consultas personalizados para nuevas fuentes de datos.

Conceptos de OpenGraph

  • Nodos: Representan objetos como usuarios, grupos, roles y computadoras.
  • Aristas: Representan relaciones entre nodos, como "MemberOf" o "AdminTo".
  • Rutas de Ataque: Una cadena de aristas que un atacante puede usar para obtener acceso privilegiado.
  • Recopiladores: Scripts que recopilan datos de sistemas objetivo y los formatean para BloodHound.

Instalación y Actualización

# For detailed installation instructions, refer to the official BloodHound documentation.
# Generally, you will need to download the latest release from the SpecterOps GitHub.

# Example of running the BloodHound GUI (replace with actual command)
./BloodHound-linux-x64

Recopilación de Datos (Ingestores)

BloodHound utiliza recopiladores (ingestores) para recopilar datos. Para BloodHound 8.0, necesitará usar recopiladores actualizados que admitan el formato OpenGraph.

  • SharpHound: El recopilador oficial para Active Directory.
  • AzureHound: El recopilador oficial para Azure.
  • Recopiladores Comunitarios: Busque recopiladores desarrollados por la comunidad para otras plataformas como GitHub, AWS, etc.

Consultas Cypher Comunes

BloodHound utiliza el lenguaje de consulta Cypher. Aquí hay algunos ejemplos de consultas:

// Find all Domain Admins
MATCH (u:User)-[:MemberOf*1..]->(g:Group {name: "DOMAIN ADMINS@your.domain"}) RETURN u.name, g.name

// Find the shortest path to Domain Admin from a specific user
MATCH (u:User {name: "user@your.domain"}), (g:Group {name: "DOMAIN ADMINS@your.domain"}), p = shortestPath((u)-[*1..]->(g)) RETURN p

// Find all computers where a specific user is an admin
MATCH (u:User {name: "user@your.domain"})-[r:AdminTo]->(c:Computer) RETURN u.name, c.name

Usando OpenGraph

Con OpenGraph, ahora puede ingerir datos de varias fuentes y crear consultas personalizadas para encontrar rutas de ataque multiplataforma.

Escenario de Ejemplo: Encontrar un usuario que sea administrador de una computadora que tiene acceso a un repositorio de GitHub sensible. cypher // Example query (syntax may vary based on the collector) MATCH (u:User)-[:AdminTo]->(c:Computer)-[:HasAccessTo]->(r:GitHubRepo {name: "sensitive-repo"}) RETURN u.name, c.name, r.nameIngerir Datos: Use SharpHound para recopilar datos de AD y un recopilador comunitario para recopilar datos de GitHub.https://specterops.io/blog/2025/07/29/bloodhound-v8-usability-extensibility-and-opengraph/Consulta Personalizada: Escriba una consulta Cypher que vincule al usuario de AD con la computadora, y la computadora con el repositorio de GitHub. https://github.com/SpecterOps/BloodHound

Recursos Adicionales