globeNetwork Services

Lors d’un test d’intrusion, chaque réseau rencontré comporte différents services réseau permettant de gérer, éditer ou créer du contenu. Ces services sont exécutés avec des permissions spécifiques et assignés à des utilisateurs donnés.

En dehors des applications web, on retrouve notamment : FTP, SMB, NFS, IMAP/POP3, SSH, MySQL/MSSQL, RDP, WinRM, VNC, Telnet, SMTP et LDAP.

👉 Pour aller plus loin sur l’énumération initiale de ces services, consulter le module Footprinting.


🔑 Accès distant aux systèmes

Pour administrer un serveur à distance (Windows ou Linux), il est nécessaire d’utiliser un service permettant d’exécuter des commandes ou d’accéder à un bureau graphique.

  • Windows : les plus utilisés sont RDP et WinRM.

  • Linux : le service principal est SSH.

Tous ces services reposent sur un mécanisme d’authentification (identifiant/mot de passe ou clé). Mal configurés, ils deviennent une surface d’attaque privilégiée.


🪟 WinRM (Windows Remote Management)

WinRM est l’implémentation Microsoft du protocole WS-Management, basé sur SOAP. Il sert à administrer des systèmes Windows à distance.

  • Ports par défaut : TCP 5985 (HTTP) et 5986 (HTTPS).

  • Nécessite une activation manuelle sur Windows 10/11.

  • Peut être sécurisé par certificats ou authentifications spécifiques.

🔧 Outils associés

NetExec

NetExec est un outil polyvalent permettant d’attaquer WinRM, mais aussi SMB, LDAP, MSSQL et d’autres services.

Un résultat indiquant (Pwn3d!) signifie qu’une exécution de commande est probablement possible.

Evil-WinRM

Une fois les identifiants obtenus, Evil-WinRM permet d’ouvrir une session PowerShell distante :


🔒 SSH (Secure Shell)

SSH est le protocole standard de connexion sécurisée pour les systèmes Linux (port TCP 22).

📜 Fonctionnement cryptographique

  • Chiffrement symétrique : même clé pour chiffrer/déchiffrer (ex. AES).

  • Chiffrement asymétrique : paire clé publique / clé privée.

  • Hashing : vérification d’intégrité et d’authenticité.

🔧 Brute-force avec Hydra

Une fois le mot de passe trouvé :


🖥️ RDP (Remote Desktop Protocol)

RDP permet l’accès distant graphique à un système Windows via TCP 3389.

  • Utilisé pour la prise en main à distance par les administrateurs.

  • Supporte l’échange d’images, sons, clavier, souris, et même l’impression distante.

🔧 Hydra - Brute-force RDP

🔧 Client RDP sous Linux

Exemple avec xfreerdp :


📂 SMB (Server Message Block)

SMB est un protocole de partage de fichiers et d’imprimantes en réseau local, utilisé surtout dans les environnements Windows.

  • Port TCP 445.

  • Implémentation open-source : Samba (Linux/macOS).

🔧 Hydra - Brute-force SMB

⚠️ Certaines versions de Hydra ne supportent pas SMBv3 → utiliser Metasploit ou mettre Hydra à jour.

🔧 Metasploit - SMB Login

🔧 NetExec - Enumération des partages SMB

🔧 smbclient - Accès aux partages


📚 Ressources utiles


circle-info

To complete the challenge questions, be sure to download the wordlists from the attached network-services.zip archive. It is highly recommended to run your attacks from the Pwnbox as some of the tasks take much longer over the VPN

Nous pouvons télécharger le fichier network-services.zip à l'aide de la commande suivante :

Une fois téléchargé, nous utilisons la commande unzip afin d'extraire le contenu de l'archive :

Find the user for the WinRM service and crack their password. Then, when you log in, you will find the flag in a file there. Submit the flag you found as the answer.

Nous utilisons netexec afin de craquer le mot de passe associé au poste cible

Nous pouvons observer la mention Pwn3d!, nous obtenons ainsi l'utilisateur john associé avec le mot de passe november.

Une fois le mot de passe craqué, nous pouvons utiliser evil-winrm :

Une fois la connexion effective, nous pouvons récupérer le contenu du fichier flag.txt présent que le poste cible :

Nous obtenons ainsi le flag :


Find the user for the SSH service and crack their password. Then, when you log in, you will find the flag in a file there. Submit the flag you found as the answer.

En ce qui concerne l'attaque sur le protocole SSH, nous allons utiliser hydra :

Le bruteforce nous remonte les identifiants suivants :

Nous nous connectons alors à notre cible avec les identifiants trouvés avec hydra :

Maintenant connectés, nous récupérons le contenu du fichier flag.txt :

Nous récupérons ainsi le flag attendu :


Find the user for the RDP service and crack their password. Then, when you log in, you will find the flag in a file there. Submit the flag you found as the answer.

Pour réaliser le bruteforce sur le protocole RDP, nous utilisons netexec :

Nous relevons ainsi les identifiants associés au protocole RDP de notre cible :

Nous pouvons donc utiliser ces identifiants à l'aide de l'outil xfreerdp :

Nous pouvons ainsi récupérer le contenu du fichier flag.txt :


Find the user for the SMB service and crack their password. Then, when you log in, you will find the flag in a file there. Submit the flag you found as the answer.

Nous allons utiliser Metasploit afin d'énumérer les différents utilisateurs possibles pour une connexion en SMB :

Une fois l'énumération effectuée, en s'aidant du cours proposé ci-dessus, nous pouvons remarquer un nouvel utilisateur encore non utilisé pour lequel les identifiants semblent fonctionnés :

Nous effectuons donc une liste des dossiers partagés disponibles à l'aide de netexec :

Il nous est alors possible d'observer qu'un répertoire nommé CASSIE est disponible. Nous pouvons donc, à l'aide de smbclient, accéder au contenu de ce répertoire :

Une fois connectés, nous pouvons observer la présence d'un fichier flag.txt. Nous pouvons donc le récupérer en local et vérifier son contenu afin de valider notre question actuelle :

Nous obtenons ainsi le flag attendu :


Last updated