🧪 Laboratorio di Buffer Overflow su FreeFloat FTP Server (CVE-2025-5548)

📌 Descrizione
Questo laboratorio dimostra come sfruttare una vulnerabilità di Stack Buffer Overflow in FreeFloat FTP Server, identificata come CVE-2025-5548.
L'obiettivo è comprendere il processo completo di sfruttamento in applicazioni Windows vulnerabili, includendo:
- Fuzzing del servizio
- Identificazione dell'offset in EIP
- Controllo del flusso di esecuzione
- Identificazione dei bad characters
- Localizzazione delle istruzioni JMP ESP
- Generazione di shellcode
- Sviluppo di un exploit funzionante
Questo laboratorio è progettato con scopi didattici per apprendere le tecniche classiche di sfruttamento della memoria.
🎯 Obiettivi del laboratorio
Durante questo laboratorio imparerai a:
- Analizzare un servizio vulnerabile
- Provocare un crash controllato
- Trovare l'offset esatto di EIP
- Controllare il flusso di esecuzione
- Identificare i bad characters
- Trovare gadget in memoria
- Generare shellcode con msfvenom
- Costruire un exploit in Python
🖥️ Ambiente del laboratorio
Il laboratorio si svolge in un ambiente controllato con i seguenti strumenti:
Macchina vittima
- Windows 7 / Windows XP
- FreeFloat FTP Server
- Immunity Debugger
- Mona.py
Macchina attaccante
- Kali Linux
- Python 3
- Metasploit Framework
- Netcat
🧰 Strumenti utilizzati
- Immunity Debugger
- Mona.py
- Metasploit Framework
- msfvenom
- Python sockets
- Netcat
📂 Struttura del laboratorio
FreeFloat-BOF-Lab/
│
├── exploit/
│ ├── fuzz.py
│ ├── offset.py
│ ├── badchars.py
│ └── exploit.py
│
├── methodology/
│ └── exploitation_methodology.md
│
├── screenshots/
│
└── README.md
🔬 Metodologia
Lo sfruttamento segue i seguenti passaggi:
- Fuzzing
- Trovare l'offset di EIP
- Controllare EIP
- Identificare i bad characters
- Trovare JMP ESP
- Generare shellcode
- Eseguire l'exploit
Puoi vedere la spiegazione completa qui:
methodology/exploitation_methodology.md
🚀 Esecuzione dell'exploit
Ascoltare la connessione inversa:
nc -lvnp 443
Eseguire l'exploit:
python exploit.py
📚 Concetti appresi
- Stack Buffer Overflow
- Controllo del registro EIP
- Shellcode
- Bad Characters
- JMP ESP
- Debugging in Windows
- Sviluppo di exploit