Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Conduct internal Active Directory reconnaissance using BloodHound Community Edition to map attack paths, identify privilege escalation chains, and discover misconfigurations in domain environments.
.claude/skills/conducting-internal-reconnaissance-with-bloodhound-ce/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | — | — |
| case-04 | ✗→✓ | ▲ Improved | — | — |
| case-15 | ✗→✓ | ▲ Improved | — | — |
| case-07 | ✗→✓ | ▲ Improved | — | — |
| case-10 | ✓→✓ | = Same ✓ | — | — |
> Legal Notice: This skill is for authorized security testing and educational purposes only. Unauthorized use against systems you do not own or have written permission to test is illegal and may violate computer fraud laws.
BloodHound Community Edition (CE) is a modern, web-based Active Directory reconnaissance platform developed by SpecterOps that uses graph theory to reveal hidden relationships and attack paths within AD environments. Unlike the legacy BloodHound application, BloodHound CE uses a PostgreSQL backend with a dedicated graph database, providing improved performance, a modern web UI, and enhanced API capabilities. Red teams use BloodHound CE to collect AD objects, ACLs, sessions, group memberships, and trust relationships, then visualize attack paths from compromised low-privileged accounts to high-value targets like Domain Admins. The SharpHound collector (v2 for CE) gathers data from Active Directory, while AzureHound collects from Azure AD / Entra ID environments.
bash curl -L https://ghst.ly/getbhce -o docker-compose.yml docker compose pull docker compose up -d
bash docker compose logs | grep "Initial Password"
powershell # Execute full collection .\SharpHound.exe -c All --outputdirectory C:\Temp
# DCOnly collection (LDAP only, stealthier) .\SharpHound.exe -c DCOnly
# Session collection for logged-on user mapping .\SharpHound.exe -c Session --loop --loopduration 02:00:00
# Collect from specific domain .\SharpHound.exe -c All -d child.domain.local
bash bloodhound-python -u user -p 'Password123' -d domain.local -ns 10.10.10.1 -c All
cypher // Find shortest path from owned principals to Domain Admins MATCH p=shortestPath((n {owned:true})-1..]->(m:Group {name:"DOMAIN ADMINS@DOMAIN.LOCAL"})) RETURN p
// Find Kerberoastable users with path to DA MATCH (u:User {hasspn:true}) MATCH p=shortestPath((u)-1..]->(g:Group {name:"DOMAIN ADMINS@DOMAIN.LOCAL"})) RETURN p
// Find computers with sessions of DA members MATCH (c:Computer)-:HasSession]->(u:User)-:MemberOf1..]->(g:Group {name:"DOMAIN ADMINS@DOMAIN.LOCAL"}) RETURN c.name, u.name
// Find ACL-based attack paths (GenericAll, WriteDACL, GenericWrite) MATCH p=(u:User)-:GenericAll|GenericWrite|WriteDacl|WriteOwner|ForceChangePassword1..]->(t) WHERE u.owned = true RETURN p
// Find users who can DCSync MATCH (u)-:MemberOf0..]->()-[:DCSync|GetChanges|GetChangesAll1..]->(d:Domain) RETURN u.name, d.name
// Find computers with LAPS but readable by non-admins MATCH (c:Computer {haslaps:true}) MATCH p=(u:User)-:ReadLAPSPassword]->(c) RETURN p
| Tool | Purpose | Platform | |------|---------|----------| | BloodHound CE | Web-based graph analysis platform | Docker | | SharpHound v2 | AD data collection (.NET, for CE) | Windows | | BloodHound.py | AD data collection (Python) | Linux | | AzureHound | Azure AD / Entra ID data collection | Cross-platform | | PlumHound | Automated BloodHound reporting | Python | | BloodHound Query Library | Community Cypher query repository | Web |
| Path Type | Description | Example | |-----------|-------------|---------| | ACL Abuse | Exploit misconfigured ACLs | GenericAll on DA group | | Kerberoasting | Crack service account passwords | SPN account → DA | | AS-REP Roasting | Attack accounts without pre-auth | No-preauth user → password crack | | Delegation Abuse | Exploit unconstrained/constrained delegation | Computer → impersonate DA | | GPO Abuse | Modify GPOs applied to privileged OUs | GPO write → code execution on DA | | Session Hijack | Leverage DA sessions on compromised hosts | Admin session → token theft |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-22 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-17 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-19 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-20 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-16 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-10 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-05 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-02 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-03 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-09 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-21 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-01 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-06 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-04 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-18 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-11 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-12 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-15 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-07 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-08 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-13 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-14 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 21 counted toward the lift figure. The other 1 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +18 percentage points is the difference between those two pass rates over the 21 comparable cases.
The per-case answers from this run were removed by the retention sweep, so the case table below shows the verdicts without the text either arm produced. The counts above were recorded at the time and are unaffected. Answers are now kept for 180 days.
Other measured skills in the registry, with their headline benchmark lift.