Présentation
Dans ce tutoriel, je vais vous expliquer comment utiliser BloodHound pour trouver les chemins de compromission d’une annuaire Active Directory.
BloodHound est un logiciel qui permet d’avoir une cartographie des chemins disponibles pour trouver les chemins de compromission d’un annuaire Active Directory. Avec cette cartographie, on va pouvoir identifier les cibles à privilégier pour réussir l’attaque d’un environnement informatique.
BloodHound ne va pas réaliser l’attaque mais simplement fournir les informations nécessaire pour arriver à réussir cette attaque.
Dans la réalisation d’un Pentest, la cartographie avec BloodHound arrive au début, après la compromission d’un compte utilisateur ou d’une machine, pour réaliser cette cartographie, on a besoin d’avoir un compte actif dans le domaine, généralement, on utilise BloodHound avec avoir récupéré un compte utilisateur et son mot de passe à l’aide de responder par exemple.
On peut aussi utiliser BloodHound sans réalisation d’attaque dans le but de faire un audit de son environnement et ensuite de prendre des mesures pour corriger les failles.
La cartographie se passe en deux étapes :
- Récupération des informations de l’annuaire Active Directory
- Importation des informations et analyse
Avertissement
L’utilisation des BloodHound et SharpHound nécessite de désactiver les antivirus.
Collecter les informations de l’annuaire Active Directory avec SharpHound
La première étape va être de collecter les données, pour cela on va utiliser SharpHound qui est disponible ici : BloodHound/Collectors at master · BloodHoundAD/BloodHound · GitHub.
Pour ce tutoriel, j’ai utilisé SharpHound .exe sur un ordinateur
Depuis une invite de commande lancer SharpHound.exe
.\SharpHound -CollectionMethod All
Patienter pendant la collecte d’informations qui prend quelques minutes.
Une fois la collecte terminer, une archive est créé avec les différents fichiers au format json.
Exploiter les informations collectées avec BloodHound
On va maintenant pouvoir passer à l’exploitation des données. BloudHound s’appuie sur Neo4j pour la génération des graphique.
Télécharger et installer Neo4j : Neo4j Desktop Download | Free Graph Database Download
Une fois Neo4j, on va créer un compte utilisateur pour BloodHound, cliquer sur Open 1.
Cliquer sur server user add 1 et ajouter un utilisateur en utilisant le formulaire avec les droits admin 2.
Télécharger BloodHound : Releases · BloodHoundAD/BloodHound · GitHub
Dézipper l’archive et exécuter BloodHound.exe.
Entrer l’identifiant et le mot de passe du compte créé précédemment et cliquer sur Login.
Patienter pendant la connexion et le chargement de BloodHound.
Une fois démarre, on arrive sur un page « blanche ».
On va charger les données, pour cela faite un glisser / déposer de l’archive qui contient les données collectées.
Patienter pendant le chargement des données …
Une fois le chargement terminé, fermer la fenêtre modale de progression.
On va maintenant pouvoir exploiter Bloodhound pour utiliser les informations envoyées. Plusieurs requêtes sont déjà créées pour y accéder, cliquer sur le « burger » 1 puis aller sur Analysis 2.
Voici quelques cartos :
La liste des utilisateurs membre du groupe ADMINS DU DOMAINE.
Pour un attaquant qui ne connait pas le domaine, ce graph est intéressant cela lui donne les cibles.
En cliquant sur un membre, les informations disponibles dans l’AD s’affiche.
Informations qui peut paramètre anodine, mais juste en regardant la constitution du nom, on peut voir que le tiering est utilisé, autre information « importante » est le nombre de GPO appliqué, car une stratégie mal configurée peut être une cible pour récupérer des privilèges.
Toujours pour cibler l’attaque, la graph ci-dessous peut être très intéressant, car il indique où un compte du groupe Admins du domaine a été ouvert en dehors d’un contrôleur de domaine.
Cette information donne maintenant la cible (ordinateur) a attaqué.
On va finir sur la cartographie dont on parle le plus, qui est : Chemin le plus court pour devenir Admins du domaine :
C’est le chemin le « plus court » théorique qu’un attaquant doit prendre pour arriver à devenir Admins du domaine.
Cela vous donne des pistes de durcissement, mais attention, le chemin peut être beaucoup plus court, un contrôleur de domaine qui sera vulnérable à une faille de sécurité non patché permet de prendre le contrôleur du domaine quasiment directement.
Vous savez maintenant comment cartographié un annuaire Active Directory avec Bloodhound.