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¶
- SpecterOps Blog: BloodHound v8 Ankündigung
- [BloodHound GitHub Repository](