TP 5 : Exploitation des failles sur
Metasploitable avec Metasploit Framework
Étape 1 : Préparation de l’environnement
Étape 2 : Étape 2 : Scan initial avec Nmap
Étape 3 : Exploitation de la vulnérabilité VSFTPD
use exploit/unix/ftp/vsftpd_234_backdoor
Étape 4 : Exploitation de la vulnérabilité Samba
Étape 5 : Exploitation de la vulnérabilité UnrealIRCd
1. Quels autres services avez-vous trouvés dans les résultats du scan ? Sont-ils
tous exploitables ?
Après un scan Nmap (db_nmap -sV -p- 192.168.1.100), sur Metasploitable 2, tu trouves en
général des services comme :
• FTP (vsftpd 2.3.4 → backdoor exploitable ✅)
• SSH (OpenSSH 4.7p1 → possible bruteforce, pas directement exploitable sans
credentials ❌)
• Telnet (protocole non sécurisé → bruteforce possible ✅)
• HTTP (Apache 2.2.8 → exploitable via failles web si appli vulnérable ✅)
• Samba (3.0.20 → vulnérable avec usermap_script ✅)
• UnrealIRCd (3.2.8.1 → backdoor exploitable ✅)
• DistCC (service de compilation → exécution de code à distance possible ✅)
• MySQL (MySQL 5.0.51a → bruteforce possible, ou injection si mal configuré ✅)
• rlogin, rsh (r-services) → très anciens, exploits possibles ✅
• VNC (accès bureau à distance → si pas protégé, attaque possible ✅)
👉 Tous les services ne sont pas exploitables directement.
• SSH nécessite des identifiants.
• MySQL nécessite un mot de passe faible ou une injection.
• Certains services demandent plus d’informations avant d’être exploités.
2. Comment vérifier si un exploit a fonctionné sans obtenir de shell ?
Même si tu n'as pas de shell, tu peux valider qu'un exploit a marché :
Méthode Explication
Création de fichiers inhabituels (ex : upload d’un fichier .txt,
Observation des fichiers
.php, etc.).
Crash du service Service arrêté ou qui ne répond plus après tentative d’exploitation.
Analyse des logs /var/log/auth.log, /var/log/syslog, etc.
Logs système
(anomalies, erreurs).
Changement dans le comportement du site ou du service (page
Modification visible
d'accueil modifiée, messages d'erreur).
Réponse de Metasploit Certains modules affichent "Exploit successful" même sans shell.
Exemple rapide :
Si tu exploitais Samba avec un script et que dans /tmp/ tu vois ton fichier qui a été écrit (ls
/tmp), même sans accès shell, l’exploit a fonctionné.
3. Pourquoi est-il important de tester les exploits dans un environnement
contrôlé comme Metasploitable ?
C’est très important, car :
• Sécurité : Tu ne risques pas d’abîmer un vrai système ou de provoquer un incident
réseau.
• Légalité : Tester sur un vrai serveur sans autorisation est illégal (punissable par la loi).
• Apprentissage : Tu peux tester librement, casser/réparer autant que tu veux sans
conséquences.
• Reproductibilité : Tu as toujours le même environnement vulnérable pour refaire les
exercices.
• Confiance : Tu apprends à reconnaître les failles de manière professionnelle sans risquer
de causer du dommage.
🛡️ Résumé :
Sécurité + Légalité + Formation pratique sans risque = Environnement contrôlé
obligatoire.
Si tu veux, je peux aussi te proposer un exemple d’exploitation DistCC (autre service que tu
dois explorer dans ton exercice supplémentaire) pour t’aider à finir ton TP ! 🚀
Veux-tu que je te prépare ça ? 🎯