20/09/2024

SharpHound : collecte des données depuis un poste hors domaine

Dans ce chapitre, nous allons voir comment utiliser SharpHound pour collecter les données de l'Active Directory, et ce, depuis un poste qui n'est pas intégré au domaine que l'on souhaite analyser.

I. Réseau, DNS et authentification

Lorsque l'on est sur un poste Windows non intégré au domaine, plusieurs choses vont nous compliquer la tâche :

  • Nous n'allons pas pouvoir profiter de l'authentification de notre session Windows pour nous authentifier sur le domaine.
  • Notre poste ne connaitra pas le nom de domaine à cibler, ni le serveur DNS, ni le contrôleur de domaine.

Il faut donc lui indiquer explicitement ces éléments, en commençant par configurer notre interface réseau pour que son serveur DNS soit le contrôleur de domaine (cas le plus fréquent). Pour confirmer que c'est bien le cas, vous pouvez utiliser la commande "ipconfig /all" :

Identification du serveur DNS principal via ipconfig all
Identification du serveur DNS principal via "ipconfig all"

Une fois cela fait, nous pourrons ouvrir avec une Invite de commande ou une console PowerShell un "runas.exe" en spécifiant les identifiants d'un utilisateur valide du domaine cible :

runas /netonly /user:it-connect.tech\arocket cmd.exe

Cette commande exécute une instance de l'Invite de commandes ("cmd.exe") avec les identifiants du domaine indiqués ("it-connect.tech\arocket") et en utilisant le mode d'authentification réseau uniquement ("/netonly"). Grâce à cette commande, les opérations réseau seront effectuées avec les droits de l'utilisateur spécifié, donc en étant authentifié sur le domaine (si les identifiants fournis sont corrects bien sûr).

Vous pouvez confirmer que vous accédez bien au domaine en essayant de lister les partages réseaux du DC (les partages "SYSVOL" et "NETONLY" sont forcément accessibles à tout utilisateur authentifié) :

net view \\it-connect.tech

Voici le résultat attendu :

Démarrage d'une session en "runas" puis accès aux partages réseau du contrôleur de domaine.
Démarrage d'une session en "runas" puis accès aux partages réseau du contrôleur de domaine.

Sur ma console PowerShell en arrière-plan, les partages réseaux ne m'étaient pas accessibles, car j'étais sur une session locale sur un poste non intégré au domaine. J'ai ensuite démarré une Invite de commande via "runas /netonly" avec un compte valide sur le domaine "it-connect.tech". Sur cette Invite de commande au premier plan, les partages réseaux du contrôleur de domaine me sont bien accessibles.

II. Collecte des données de l'Active Directory

À présent, nous n'avons plus qu'à lancer SharpHound :

.\Sharphound.exe

Voici le résultat attendu :

Résultat de l'exécution de SharpHound sur un poste non intégré au domaine.
Résultat de l'exécution de SharpHound sur un poste non intégré au domaine.

On voit ici que SharpHound est parvenu à retrouver le domaine lui-même, à identifier son contrôleur de domaine, il est parvenu à établir une connexion LDAP avec ce dernier et a extrait 3604 objets. Sur le poste depuis lequel nous avons effectué notre collecte, nous avons à présent une archive ZIP :

Archive ZIP produite par SharpHound contenant les données collectées.
Archive ZIP produite par SharpHound contenant les données collectées.

Gardez bien cette archive ZIP et assurez-vous de ne pas la stocker n'importe où pour qu'elle ne tombe pas entre de mauvaises mains. Elle contient des informations sensibles sur les chemins d'attaque de votre Active Directory, voire des mots de passe.

La majorité des problèmes qui peuvent survenir sont principalement dus au DNS, étant donné que votre poste n'est pas dans le domaine, il peut arriver qu'il ne puisse pas nativement résoudre les noms DNS des machines du domaine. Commencez par confirmer que vous pouvez joindre le contrôleur de domaine au niveau réseau via son adresse IP, puis ses services (RPC, SMB, LDAP), et que vous avez le bon serveur DNS de paramétré (le contrôleur de domaine lui-même en général). Si les problèmes persistent, c'est probablement dû à un problème d'authentification.

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.