Un mini-tuto sur l’outil PetitPotam, rien d’extraordinaire, juste un petit récap des différentes étapes.
Au cas où vous auriez vécu dans une grotte, PetitPotam est un outil permettant de relayer l’authentification NTLM d’un serveur Windows.
Cela tombe vraiment à pic depuis que tout le monde a désactiver le PrintSpooler sur les DC 🙂
Ce qui est génial c’est que vous n’avez même pas besoin de disposer au préalable d’un compte du domaine, pas mal non ?
Ce qu’on rencontre le plus souvent en ce moment c’est le relai NTLM d’un contrôleur de domaine vers le serveur web de certificat interne à l’entreprise dans le but de récupérer un certificat machine du DC.
Pour ce faire il suffit de récupérer une version de l’outil ntlmrelayx (avec support du relai vers un serveur AD Certificate Service en HTTP)
Un petit exemple sur mon lab où 192.168.112.135 est l’adresse IP de mon serveur de certificat :
Une fois le relai NTLM en écoute y a plus qu’à lancer PetitPotam en ciblant une machine intéressante, au hasard un contrôleur de domaine.
Ici dans mon lab 192.168.112.130 est l’adresse IP de mon serveur relai et 192.168.112.132 est l’adresse IP de mon DC.
De retour sur ma machine de relai NTLM, j’obtiens le certificat du DC :
On peut faire un tour sur le serveur d’autorité de certificat pour vérifier l’existence de ce certificat machine :
Une fois ce certificat machine en main, vous pouvez ensuite générer un ticket Kerberos TGT pour le DC avec par exemple l’outil Rubeus :
Rubeus.exe asktgt /user:<user> /certificate:<base64-certificate> /ptt
Une fois le ticket TGT en mémoire vous pouvez devenir maître du domaine avec l’attaque DCsync qui pour rappel permet de récupérer tous les hashs du domaine, rien que ça.
mimikatz.exe lsadump::dcsync /domain:kahlon.local /all /csv
Avec tous ces hashs vous pouvez choisir au hasard le hash d’un administrateur du domaine pour faire une attaque de type Pass-The-Hash
mimikatz.exe privilege::debug sekurlsa::pth /user:Administrator domain:kahlon.local /ntlm:xxxxxxxxxxxxxxxx
Et voila échec et mat