Zum Inhalt

BloodHound 8.0 with OpenGraph Cheatsheet

BloodHound 8.0 mit OpenGraph Cheatsheet

Überblick

BloodHound 8.0 ist ein bedeutendes Update des weit verbreiteten Open-Source-Angriffspfad-Verwaltungstools. Das bedeutendste neue Feature ist OpenGraph, das die Fähigkeiten von BloodHound über Active Directory hinaus erweitert, um Identitäts-Angriffspfade über verschiedene Systeme wie GitHub, Snowflake und mehr zu kartieren.

Schlüsselfunktionen von BloodHound 8.0

  • OpenGraph: Ein neues, erweiterbares Graphenmodell, das die Erfassung und Analyse von Daten aus beliebigen Quellen ermöglicht, nicht nur aus Active Directory.
  • Erweiterte Angriffspfade: Visualisierung und Analyse von Angriffspfaden über mehrere Plattformen und Dienste hinweg.
  • Verbesserte Benutzerfreundlichkeit: Schnellerer und klarerer Zugriff auf Informationen mit einer verbesserten Benutzeroberfläche.
  • Verbesserte Erweiterbarkeit: Einfacheres Hinzufügen neuer Datenquellen und Angriffsprimitiven.
  • Community-Getrieben: Die BloodHound-Community kann benutzerdefinierte Collector und Abfragen für neue Datenquellen erstellen und teilen.

OpenGraph-Konzepte

  • Knoten: Repräsentieren Objekte wie Benutzer, Gruppen, Rollen und Computer.
  • Kanten: Repräsentieren Beziehungen zwischen Knoten, wie "MemberOf" oder "AdminTo".
  • Angriffspfade: Eine Kette von Kanten, die ein Angreifer nutzen kann, um privilegierten Zugriff zu erlangen.
  • Collector: Skripte, die Daten aus Zielsystemen sammeln und für BloodHound formatieren.

Installation und Upgrade

# 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

Datensammlung (Ingestoren)

BloodHound verwendet Collector (Ingestoren), um Daten zu sammeln. Für BloodHound 8.0 müssen Sie aktualisierte Collector verwenden, die das OpenGraph-Format unterstützen.

  • SharpHound: Der offizielle Collector für Active Directory.
  • AzureHound: Der offizielle Collector für Azure.
  • Community-Collector: Suchen Sie nach Community-entwickelten Collectoren für andere Plattformen wie GitHub, AWS usw.

Häufige Cypher-Abfragen

BloodHound verwendet die Cypher-Abfragesprache. Hier sind einige Beispielabfragen:

// 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

OpenGraph verwenden

Mit OpenGraph können Sie jetzt Daten aus verschiedenen Quellen erfassen und benutzerdefinierte Abfragen erstellen, um plattformübergreifende Angriffspfade zu finden.

Beispielszenario: Finden Sie einen Benutzer, der Administrator auf einem Computer ist, der Zugriff auf ein sensibles GitHub-Repository hat. 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.nameDaten erfassen: Verwenden Sie SharpHound, um AD-Daten zu sammeln, und einen Community-Collector, um GitHub-Daten zu sammeln.https://specterops.io/blog/2025/07/29/bloodhound-v8-usability-extensibility-and-opengraph/ Benutzerdefinierte Abfrage: Schreiben Sie eine Cypher-Abfrage, die den AD-Benutzer mit dem Computer und den Computer mit dem GitHub-Repository verknüpft. https://github.com/SpecterOps/BloodHound

Zusätzliche Ressourcen