Énumération RDP et Accès par Mot de Passe Faible

LinuxBeginner
Pratiquer maintenant

Introduction

Bienvenue dans ce laboratoire pratique axé sur l'énumération et l'exploitation du protocole RDP (Remote Desktop Protocol). Le RDP est un protocole couramment utilisé par les administrateurs pour gérer les systèmes Windows à distance. Cependant, lorsqu'il est mal configuré, il peut représenter un risque de sécurité important.

Dans ce laboratoire, vous simulerez un vecteur d'attaque courant où un adversaire scanne les services RDP exposés, identifie les configurations faibles et obtient l'accès en utilisant des identifiants par défaut ou facilement devinables. Vous utiliserez des outils standards de test d'intrusion tels que nmap pour le scan et xfreerdp pour la connexion à la session distante. Votre objectif final sera de naviguer dans le système compromis et de récupérer un drapeau caché (flag).

Une fois terminé, vous comprendrez comment :

  • Vérifier la connectivité réseau à un système cible.
  • Utiliser nmap pour scanner et énumérer les services RDP.
  • Identifier les faiblesses de sécurité telles que les niveaux de chiffrement bas.
  • Tenter d'obtenir l'accès en utilisant des identifiants faibles avec xfreerdp.
  • Effectuer une post-exploitation basique pour localiser des informations sensibles.

Commençons cet exercice pratique en cybersécurité.

Vérifier la Connectivité à la Cible avec Ping

Dans cette étape, vous allez effectuer la première phase de reconnaissance : confirmer que le système cible est en ligne et accessible depuis votre machine. La commande ping est un outil de diagnostic réseau standard qui envoie des paquets ICMP à un hôte pour tester la connectivité.

Votre environnement comprend un système cible accessible via le nom d'hôte target. Pour vérifier que vous pouvez communiquer avec lui, exécutez la commande suivante dans votre terminal pour envoyer quatre paquets :

ping -c 4 target

Vous devriez voir une réponse similaire à celle ci-dessous. Cela confirme que la cible est active et que votre chemin réseau est dégagé. L'adresse IP et les temps de réponse peuvent légèrement différer.

PING target (172.17.0.2) 56(84) bytes of data.
64 bytes from target (172.17.0.2): icmp_seq=1 ttl=64 time=0.105 ms
64 bytes from target (172.17.0.2): icmp_seq=2 ttl=64 time=0.069 ms
64 bytes from target (172.17.0.2): icmp_seq=3 ttl=64 time=0.068 ms
64 bytes from target (172.17.0.2): icmp_seq=4 ttl=64 time=0.067 ms

--- target ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3075ms
rtt min/avg/max/mdev = 0.067/0.077/0.105/0.016 ms

La connectivité étant confirmée, vous êtes prêt à passer à un scan plus détaillé.

Scanner les Ports Ouverts avec Nmap

Dans cette étape, vous utiliserez nmap pour scanner la cible à la recherche de ports ouverts et identifier les services qui y sont exécutés. C'est une partie essentielle de l'énumération, car elle révèle les surfaces d'attaque potentielles. Nous allons spécifiquement vérifier le service RDP, qui s'exécute généralement sur le port 3389.

Exécutez la commande nmap suivante pour effectuer un scan de version (-sV) sur le port 3389 (-p 3389) et exécuter un script (--script) pour vérifier les niveaux de chiffrement RDP :

nmap -sV -p 3389 --script rdp-enum-encryption target

La sortie fournira des informations détaillées sur le service RDP.

Starting Nmap 7.80 ( https://nmap.org ) at 2025-09-18 14:51 CST
Nmap scan report for target (172.17.0.2)
Host is up (0.00038s latency).

PORT     STATE SERVICE       VERSION
3389/tcp open  ms-wbt-server xrdp
| rdp-enum-encryption:
|   Security layer
|     CredSSP (NLA): SUCCESS
|     CredSSP with Early User Auth: SUCCESS
|     Native RDP: SUCCESS
|     RDSTLS: SUCCESS
|     SSL: SUCCESS
|   RDP Encryption level: High
|     128-bit RC4: SUCCESS
|_  RDP Protocol Version:  RDP 5.x, 6.x, 7.x, or 8.x server

Nmap done: 1 IP address (1 host up) scanned in 13.57 seconds

D'après les résultats du scan, observez que le port 3389/tcp est ouvert et exécute le service xrdp. Bien que le niveau de chiffrement soit indiqué comme "High" (Élevé), la principale vulnérabilité réside dans les identifiants faibles plutôt que dans les faiblesses de chiffrement. Le service prend en charge plusieurs méthodes d'authentification, et nous allons exploiter l'authentification par mot de passe faible dans l'étape suivante.

Se Connecter à la Cible via RDP

Dans cette étape, vous allez tenter de vous connecter au service RDP en utilisant les identifiants administrator et password. Cette paire est un défaut courant et constitue souvent une cible principale pour les attaques par force brute. Vous utiliserez xfreerdp, un client RDP en ligne de commande pour Linux.

Tout d'abord, assurez-vous que xfreerdp est installé. Le script de configuration devrait s'en être chargé, mais vous pouvez exécuter sudo apt install freerdp2-x11 si nécessaire.

Exécutez maintenant la commande suivante pour vous connecter à la target :

xfreerdp /u:administrator /p:password /v:target
  • /u:administrator: Spécifie le nom d'utilisateur.
  • /p:password: Spécifie le mot de passe.
  • /v:target: Spécifie l'adresse du serveur.

Vous pourriez voir un avertissement de certificat car la cible utilise un certificat auto-signé. Ceci est normal dans les environnements de laboratoire. Tapez yes et appuyez sur Entrée pour continuer.

[11:25:30:789] [INFO][com.freerdp.client.x11] - Please check if the server is running with the correct certificate.
[11:25:30:789] [INFO][com.freerdp.client.x11] - Certificate details:
...
The certificate is not trusted. Do you trust the certificate? (Y/N) yes
RDP Connection

Après une authentification réussie, une nouvelle fenêtre s'ouvrira, affichant le bureau à distance du système cible. Vous avez maintenant un accès graphique à la machine.

Explorer le Système Cible et Localiser le Drapeau

Dans cette étape, votre objectif final est d'explorer le système distant et de trouver le drapeau (flag). Ceci simule la phase de post-exploitation, où un attaquant recherche des données précieuses.

Dans la fenêtre de session RDP, vous verrez un environnement de bureau. Vous avez plusieurs façons de localiser et d'afficher le drapeau :

Méthode 1 : Utilisation du gestionnaire de fichiers

  1. Localisez et ouvrez l'application Gestionnaire de fichiers (elle peut ressembler à une icône de dossier).
  2. Naviguez vers le dossier Documents dans le répertoire personnel de l'utilisateur administrator : /home/administrator/Documents.
  3. Trouvez le fichier nommé flag.txt.
  4. Double-cliquez sur flag.txt pour l'ouvrir avec l'éditeur de texte (Mousepad).
Gestionnaire de fichiers

Méthode 2 : Utilisation du terminal

  1. Ouvrez l'application Terminal depuis le bureau ou le menu.
  2. Exécutez la commande : cat /home/administrator/Documents/flag.txt
Fenêtre du terminal affichant la commande pour afficher le drapeau

L'une ou l'autre méthode révélera le contenu du fichier du drapeau.

labex{w34k_p4ssw0rd_rdp_pwn3d}

Félicitations ! Vous avez réussi à énumérer le service RDP, à exploiter un mot de passe faible et à récupérer le drapeau.

Important : Pour terminer la vérification du laboratoire, vous devez copier la valeur du drapeau et l'enregistrer dans un fichier sur la machine hôte. Créez un fichier nommé flag.txt dans le répertoire /home/labex/project et collez-y le contenu du drapeau.

echo "labex{w34k_p4ssw0rd_rdp_pwn3d}" > /home/labex/project/flag.txt

Vous pouvez maintenant fermer la fenêtre RDP pour déconnecter la session.

Résumé

Dans ce laboratoire, vous avez exécuté avec succès une attaque simulée contre un service Remote Desktop Protocol mal configuré. Vous avez progressé à travers les étapes clés d'un test d'intrusion :

  • Reconnaissance : Vous avez utilisé ping pour confirmer que la cible était en ligne.
  • Énumération : Vous avez utilisé nmap avec des scripts spécifiques pour identifier un port RDP ouvert et recueillir des détails sur sa configuration, tels que son niveau de chiffrement faible.
  • Exploitation : Vous avez utilisé xfreerdp pour accéder au système distant en exploitant un mot de passe faible et prévisible pour le compte administrator.
  • Post-Exploitation : Vous avez navigué dans la structure de fichiers du système compromis pour localiser et récupérer le drapeau (flag).

Cet exercice démontre à quel point il est essentiel de sécuriser les services d'accès à distance. Exposer RDP à Internet, utiliser des identifiants faibles ou par défaut, et employer des paramètres de sécurité obsolètes peuvent créer de graves vulnérabilités. En comprenant ces vecteurs d'attaque, vous êtes mieux préparé à mettre en œuvre des mesures défensives solides.