🧪 FreeFloat FTP Server Buffer Overflow Lab (CVE-2025-5548)

📌 Description
Ce laboratoire démontre comment exploiter une vulnérabilité de Stack Buffer Overflow dans FreeFloat FTP Server, identifiée comme CVE-2025-5548.
L'objectif est de comprendre le processus complet d'exploitation dans les applications Windows vulnérables, incluant :
- Fuzzing du service
- Identification du décalage (offset) dans EIP
- Contrôle du flux d'exécution
- Identification des bad characters
- Localisation des instructions JMP ESP
- Génération de shellcode
- Développement d'un exploit fonctionnel
Ce laboratoire est conçu à des fins éducatives pour apprendre les techniques classiques d'exploitation mémoire.
🎯 Objectifs du laboratoire
Durant ce laboratoire, vous apprendrez à :
- Analyser un service vulnérable
- Provoquer un crash contrôlé
- Trouver le décalage exact (offset) de EIP
- Contrôler le flux d'exécution
- Identifier les bad characters
- Trouver des gadgets en mémoire
- Générer du shellcode avec msfvenom
- Construire un exploit en Python
🖥️ Environnement du laboratoire
Le laboratoire se déroule dans un environnement contrôlé avec les outils suivants :
Machine victime
- Windows 7 / Windows XP
- FreeFloat FTP Server
- Immunity Debugger
- Mona.py
Machine attaquante
- Kali Linux
- Python 3
- Metasploit Framework
- Netcat
🧰 Outils utilisés
- Immunity Debugger
- Mona.py
- Metasploit Framework
- msfvenom
- Python sockets
- Netcat
📂 Structure du laboratoire
FreeFloat-BOF-Lab/
│
├── exploit/
│ ├── fuzz.py
│ ├── offset.py
│ ├── badchars.py
│ └── exploit.py
│
├── methodology/
│ └── exploitation_methodology.md
│
├── screenshots/
│
└── README.md
🔬 Méthodologie
L'exploitation suit les étapes suivantes :
- Fuzzing
- Trouver l'offset de EIP
- Contrôler EIP
- Identifier les bad characters
- Trouver JMP ESP
- Générer shellcode
- Exécuter l'exploit
Vous pouvez voir l'explication complète ici :
methodology/exploitation_methodology.md
🚀 Exécution de l'exploit
Écouter la connexion inverse :
nc -lvnp 443
Exécuter l'exploit :
python exploit.py
📚 Concepts appris
- Stack Buffer Overflow
- Contrôle du registre EIP
- Shellcode
- Bad Characters
- JMP ESP
- Débogage sous Windows
- Développement d'exploits