15/11/2024

Récupération de l’agent de collecte SharpHound

Maintenant que nous avons un serveur BloodHound fonctionnel, il est temps de collecter les données de notre Active Directory. Nous allons pour cela utiliser un collecteur, nommé SharpHound. Il existe un autre collecteur nommé AzureHound qui, vous vous en doutez, permet de collecter les données d'un tenant Azure.

Les collecteurs sont des clients qui vont interagir avec l'Active Directory pour en extraire les données pertinentes pour BloodHound. Il existe différentes options pour extraire plus ou moins d'objets en fonction de notre besoin.

Pour une collecte sur un Active Directory, celle-ci s'effectue principalement via les protocoles RPC, SMB et LDAP/LDAPS et via un compte utilisateur qui n'a pas besoin d'être privilégié (ni localement, ni sur le domaine). En effet, n'importe quel compte utilisateur du domaine est suffisant.

C'est ce qui est souvent effrayant et méconnu des équipes d'administration : n'importe quel utilisateur du domaine peut avoir accès à un très grand nombre d’informations à propos d'autres objets (membres, permissions, attributs, etc.). Ce qui est normal et nécessaire pour le bon fonctionnement de l'Active Directory. Gardez donc en tête que tout ce que vous verrez à partir d'ici est également consultable par vos utilisateurs du domaine (ou un attaquant ayant compromis un compte utilisateur).

Attention, si votre annuaire possède un défaut de configuration (accès LDAP autorisé en anonyme) alors toutes ces données pourront être obtenues sans authentification !

Depuis BloodHound, il faut se rendre dans la roue crantée puis dans "Download Collectors" pour trouver les dernières versions des collecteurs, plutôt pratique :

Accès au menu "Download Collectors" depuis l'interface web BloodHound.
Accès au menu "Download Collectors" depuis l'interface web BloodHound.

Il n'y a qu'à cliquer sur "Download SharpHound" pour télécharger une archive ZIP :

Téléchargement de l'archive ZIP contenant SharpHound.
Téléchargement de l'archive ZIP contenant SharpHound.

Le téléchargement depuis l'interface web de notre BloodHound permet notamment de nous assurer que nous aurons une version des exports compatible avec notre version BloodHound. Avec les évolutions de version et maintenant les versions Legacy, Community et Enterprise, il peut exister des incompatibilités qui causeront des dysfonctionnements lors de l'import.

Nous allons surtout utiliser le binaire compilé SharpHound.exe. Une version PowerShell (.ps1) est aussi disponible.

Contenu de l'archive ZIP SharpHound téléchargée.
Contenu de l'archive ZIP SharpHound téléchargée.

Si vous avez un antivirus sur votre poste de travail, il est possible qu'il "sonne" à la rencontre du binaire SharpHound.exe et le supprime. C'est une déconvenue qui n'arrivait pas lorsque j'ai commencé à utiliser cet outil il y a plusieurs années. Mais, entre-temps, les attaquants et autre APT se sont également mis à l'utiliser : c'est le risque du métier lorsque l'on conçoit un outil aussi efficace, pour l'attaquant comme pour le défenseur.

Conséquence, certains éditeurs de solutions antivirales, EPP et autre EDR ont commencé à le référencer comme malveillant. Il est donc possible qu'il faille ajouter une règle d'exception pour ce binaire afin de pouvoir l'utiliser. Pensez à supprimer cette exception à la fin de vos opérations.

Pour information, dans mon Lab, mon Active Directory se nomme AD01, possède l'adresse IP 192.168.56.102 et est le contrôleur du domaine "it-connect.tech". Il est aussi le serveur DNS de ce domaine.

author avatar
Mickael Dorigny Co-founder
Co-fondateur d'IT-Connect.fr. Auditeur/Pentester chez Orange Cyberdéfense.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.