BloodHound

My cheatsheet of custom bloodhound queries

General Queries

List all owned users

MATCH (m:User) WHERE m.owned=TRUE RETURN m

List all owned computers

MATCH (m:Computer) WHERE m.owned=TRUE RETURN m

List all owned groups

MATCH (m:Group) WHERE m.owned=TRUE RETURN m

List all High Valued Targets

MATCH (m) WHERE m.highvalue=TRUE RETURN m

List the groups of all owned users

MATCH (m:User) WHERE m.owned=TRUE 
WITH m 
MATCH p=(m)-[:MemberOf*1..]->(n:Group) 
RETURN p

Find the Shortest path to a high value target from an owned object

MATCH p=shortestPath((g {owned:true})-[*1..]->(n {highvalue:true})) 
WHERE g<>n 
RETURN p

Find the Shortest path to an unconstrained delegation system from an owned object

Kerberoasting & AS-REP Roasting

Find all Kerberoastable Users

Find Kerberoastable Users (password last set < 5 years ago)

Find Kerberoastable Users with a path to DA

Find users that can be AS-REP roasted

Kerberoastable Users with passwords > 5 years ago

Kerberoastable users in high value groups

Kerberoastable users and AdminTo

RDP Access and Admin Rights

Machines Domain Users can RDP into

Groups with RDP access

Groups with password reset rights

Groups with local admin rights

Users with local admin rights

Active Domain Admin sessions

Constrained & Unconstrained Delegation

Computers with Unconstrained Delegation

Computers that allow Unconstrained Delegation but aren’t DCs

Constrained delegation relationships

Computers with constrained delegation permissions

User and Group Insights

Unsupported OS

Users logged in within the last 90 days

Users with passwords set in last 90 days

Users never logged in and active

All GPOs

Groups containing 'admin'

Show high value target's groups

Groups with both users and computers

Users in VPN group

Unprivileged users can add members to groups

Foreign Object Access

Object in one domain with access to another

Object from domain A that can touch foreign object

All sessions for users in a specific domain

All edges any owned user has on a computer


Azure Queries

Return All Azure Users that are part of the 'Global Administrator' Role

Return All On-Prem users with edges to Azure

Find all paths to an Azure VM

Find all paths to an Azure KeyVault

Return All Azure Users and their Groups

Return All Azure AD Groups synchronized with On-Prem AD

Find all Privileged Service Principals

Find all Owners of Azure Applications

Last updated