SharpHound : le collecteur de données Active Directory pour BloodHound 🔍

SharpHound est le collecteur de données officiel de BloodHound Community Edition, un outil d’audit Active Directory largement utilisé par les équipes de sécurité pour cartographier les relations de privilèges au sein d’un domaine. SharpHound se charge de la collecte : il interroge Active Directory via LDAP et certaines API Windows, puis transmet les informations recueillies à BloodHound, qui les représente sous forme de graphe afin de révéler les chemins d’attaque potentiels vers des comptes à privilèges élevés. Voici son fonctionnement, les données qu’il collecte, ses différentes éditions, ainsi que les bonnes pratiques d’utilisation et de détection.
SharpHound et BloodHound : deux outils complémentaires
SharpHound et BloodHound remplissent des rôles distincts mais indissociables. SharpHound collecte et structure les informations présentes dans un environnement Active Directory, sans les analyser lui-même. BloodHound, de son côté, importe ces données collectées et les affiche sous forme de graphe interactif, mettant en évidence les relations entre utilisateurs, groupes, ordinateurs et permissions. Cette séparation permet d’exécuter la collecte séparément de l’analyse, ce qui facilite les audits menés sur des environnements Active Directory volumineux ou complexes.
Le rôle de collecteur de données Active Directory
Concrètement, SharpHound explore l’annuaire Active Directory pour en extraire une image complète des relations existant entre les objets du domaine. Contrairement à un simple export de comptes utilisateurs, l’outil s’intéresse avant tout aux relations : qui appartient à quel groupe, qui dispose de sessions ouvertes sur quelle machine, qui détient des permissions particulières sur quel objet. C’est précisément cette cartographie relationnelle qui permet ensuite à BloodHound d’identifier des chemins d’attaque parfois invisibles lors d’un audit manuel classique.
Quelles données SharpHound collecte-t-il
La collecte peut porter sur plusieurs catégories d’objets et de relations, selon les méthodes sélectionnées lors de l’exécution :
- les utilisateurs et leurs propriétés associées,
- les groupes Active Directory et leurs appartenances imbriquées,
- les ordinateurs du domaine et les sessions utilisateur actives détectées,
- les relations d’approbation entre domaines,
- les permissions Active Directory accordées sur certains objets sensibles,
- les droits d’accès locaux configurés sur certaines machines du domaine.
L’ensemble de ces relations, une fois assemblées, permet de reconstituer des chaînes de privilèges qu’un simple examen des groupes de sécurité, pris isolément, ne permettrait pas de détecter facilement.
LDAP, API Windows et méthodes de collecte
SharpHound s’appuie principalement sur des requêtes LDAP pour interroger le contrôleur de domaine et récupérer la structure des objets Active Directory : utilisateurs, groupes, unités d’organisation et attributs associés. En complément, l’outil utilise certaines API Windows natives pour collecter des informations non disponibles directement via LDAP, comme les sessions utilisateur actives sur un poste ou les groupes d’administrateurs locaux configurés sur une machine. Cette combinaison de méthodes explique pourquoi une exécution complète de SharpHound génère un nombre significatif de requêtes réseau, un point important à prendre en compte tant pour la planification d’un audit que pour la détection défensive.
Plusieurs méthodes de collecte peuvent être sélectionnées selon les besoins de l’audit, allant d’une collecte limitée aux relations Active Directory de base jusqu’à une collecte plus poussée incluant les sessions et les groupes locaux de chaque machine. Ce choix influence directement le volume de requêtes générées et donc la visibilité de l’opération sur le réseau, un arbitrage que les équipes d’audit doivent considérer selon le contexte et le niveau de discrétion recherché.
Format des données et importation dans BloodHound
Une fois la collecte terminée, SharpHound génère des fichiers structurés contenant l’ensemble des objets et relations recueillis. Ces fichiers sont ensuite importés directement dans l’interface de BloodHound, qui reconstruit le graphe des relations et propose des requêtes prédéfinies pour identifier certains schémas d’attaque courants, comme un chemin reliant un utilisateur standard à un compte administrateur du domaine via une succession de permissions mal configurées.
SharpHound Community Edition, SharpHound Enterprise et BloodHound
Il existe plusieurs variantes de l’écosystème BloodHound, avec des différences notables entre elles.
| Composant | Rôle | Modèle | Usage principal |
|---|---|---|---|
| SharpHound Community Edition | Collecte des données AD | Gratuit, open source | Audit ponctuel et Red Team |
| SharpHound Enterprise | Collecte continue et automatisée | Solution commerciale | Surveillance permanente du risque |
| BloodHound (CE ou Enterprise) | Analyse et visualisation | Gratuit ou commercial | Identification des chemins d’attaque |
SharpHound Community Edition correspond au collecteur associé à BloodHound CE, adapté aux audits ponctuels et aux exercices de Red Team. SharpHound Enterprise, quant à lui, s’inscrit dans une approche de surveillance continue, avec une collecte automatisée et régulière destinée à suivre l’évolution du risque dans le temps, plutôt qu’un audit ponctuel réalisé à un instant donné.
Usages légitimes pour les audits et équipes de sécurité
SharpHound est conçu comme un outil d’audit Active Directory légitime, utilisé aussi bien par les administrateurs système que par les équipes de sécurité offensive et défensive. Les équipes Red Team l’utilisent pour identifier des chemins d’attaque exploitables lors d’un test d’intrusion autorisé, tandis que les équipes Blue Team et les administrateurs s’en servent pour repérer proactivement des relations de privilèges risquées avant qu’elles ne soient exploitées par un acteur malveillant. Dans les deux cas, l’objectif reste le même : révéler des combinaisons de permissions Active Directory que la structure des groupes seule ne laisse pas apparaître clairement.
Autorisation préalable et protection des données collectées
L’exécution de SharpHound ne doit jamais avoir lieu sans autorisation explicite sur l’environnement concerné, qu’il s’agisse d’un audit interne ou d’un test d’intrusion encadré par un mandat clair. Les fichiers générés lors de la collecte contiennent une cartographie détaillée des relations de privilèges d’un domaine entier, ce qui en fait une donnée particulièrement sensible : entre de mauvaises mains, ces fichiers offriraient une feuille de route quasi complète des chemins d’attaque disponibles. Il est donc essentiel de restreindre l’accès à ces fichiers, de les stocker de façon sécurisée pendant toute la durée nécessaire à leur analyse, puis de les supprimer une fois l’audit terminé, plutôt que de les conserver indéfiniment sur un poste de travail standard.
Risques d’utilisation malveillante
Bien que SharpHound soit un outil légitime, sa capacité à cartographier rapidement les relations de privilèges d’un domaine en fait également un outil recherché par des attaquants ayant déjà obtenu un accès initial à un environnement Active Directory. Une utilisation détournée peut leur permettre d’identifier rapidement le chemin le plus court vers un compte à privilèges élevés, sans avoir à explorer manuellement chaque groupe et chaque permission. Cette dualité justifie une vigilance particulière de la part des équipes de sécurité, tant sur la maîtrise de l’usage légitime de l’outil que sur sa détection en cas d’usage non autorisé.
Détecter l’utilisation de SharpHound dans un environnement Active Directory
Plusieurs signaux permettent de repérer une activité correspondant à une collecte de type SharpHound. Un volume anormalement élevé de requêtes LDAP en provenance d’un même poste, en particulier lorsqu’elles portent sur l’énumération systématique d’un grand nombre d’objets, constitue un premier indicateur. Des accès distants répétés via SMB ou RPC vers de nombreuses machines du domaine, dans un laps de temps réduit, viennent généralement compléter ce schéma, notamment lorsque l’outil recherche les sessions utilisateur actives ou les groupes d’administrateurs locaux sur chaque poste interrogé. La corrélation des journaux du contrôleur de domaine, des postes de travail et d’un système de gestion des événements de sécurité (SIEM) reste la méthode la plus fiable pour distinguer une activité d’audit autorisée d’une tentative de reconnaissance malveillante au sein du domaine.
Réduire l’exposition face à une cartographie Active Directory
Au-delà de la seule détection, plusieurs mesures défensives limitent l’impact d’une éventuelle collecte non autorisée : réduire le nombre de comptes disposant de permissions étendues, éviter les appartenances à des groupes imbriquées inutilement complexes, et surveiller régulièrement, à l’aide de BloodHound lui-même dans une démarche défensive, l’apparition de nouveaux chemins d’attaque involontaires créés par des changements de configuration. Cette approche proactive transforme un outil potentiellement exploitable par un attaquant en un véritable levier de renforcement de la sécurité des identités au sein du domaine.
