BloodHound is like X-ray vision for Active Directory. It visualizes attack paths by mapping relationships between users, groups, computers, and permissions. What would take days of manual enumeration, BloodHound reveals in seconds.
Created by @_wald0, @CptJesus, and @harmj0y, BloodHound uses graph theory to find privilege escalation paths. It answers the question: "How can I get from user X to Domain Admin?"
BloodHound CE vs Legacy
BloodHound Community Edition (CE) is the newer version with a web interface. Legacy BloodHound uses a desktop app. Both use the same concepts; we'll cover both where relevant.
BloodHound Architecture
Setup
Legacy BloodHound
BloodHound CE (Docker)
Data Collection with SharpHound
Remote Collection (Linux)
Session Collection
Run session collection multiple times during the day. Users log in and out - multiple collections increase chances of finding active admin sessions.
Importing Data
Built-in Queries
Essential Queries
Custom Cypher Queries
Understanding Edges (Relationships)
Edge = Attack Step
Each edge represents a possible attack. A path with 5 edges means 5 attack steps from source to target.
Attack Path Analysis
Using BloodHound for Attack Planning
1
Mark OwnedRight-click compromised users/computers, mark as "Owned"
2
Find PathsRun "Shortest Path from Owned Principals"
3
Analyze EdgesClick each edge to understand the attack
4
PrioritizeFocus on shortest, most reliable paths
5
ExecuteFollow the path, updating owned status
Reading Attack Paths
Pro Tips
- Always run session collection multiple times during an engagement
- Mark High Value targets (DCs, admin accounts) for focused analysis
- Use "Outbound Control" to see what a compromised user can attack
- Check "First Degree Object Control" for immediate targets
- Export paths as CSV for reporting
- Clear database between engagements (different clients)
OPSEC
SharpHound generates significant LDAP traffic. Use --stealth flag and consider running from multiple hosts to blend with normal traffic.
Knowledge Check
Challenges
Key Takeaways
- BloodHound visualizes AD attack paths using graph theory
- SharpHound collects AD data; BloodHound visualizes it
- Mark compromised principals as "Owned" for path analysis
- Edges represent attack techniques (AdminTo, GenericAll, etc.)
- Session collection should be repeated throughout engagement
- Cypher queries enable custom attack path discovery