
Repository di laboratorio finalizzato allo sfruttamento controllato del CVE-2025-5548 su FreeFloat FTP Server, in ambiente Windows e in VM isolata.
Il progetto è suddiviso in due blocchi:
Environment/: preparazione dell'ambiente (strumenti, IDE, debugger, disassembler e app vulnerabili).Exploit/: metodologia pratica e script per una catena completa di sfruttamento del vettore FTP (MKD) associato allo scenario del CVE.Costruire, validare e documentare una catena di sfruttamento riproducibile che copre:
JMP ESP.M6/
├── README.md
├── Environment/
│ ├── 01-requirements/
│ │ └── requirements.md
│ ├── 02-programming-environment/
│ │ ├── git.md
│ │ ├── java-jdk.md
│ │ ├── netcat.md
│ │ └── python3.md
│ ├── 03-ides/
│ │ ├── notepad++.md
│ │ ├── pycharm.md
│ │ └── vscode.md
│ ├── 04-debuggers/
│ │ └── immunity-debugger.md
│ ├── 05-disassemblers/
│ │ ├── ghidra.md
│ │ └── ida-free.md
│ ├── 06-exploit-development/
│ │ └── mona-immunity.md
│ ├── 07-vulnerable-applications/
│ │ ├── freefloatftpserver.md
│ │ └── vulnserver.md
│ └── images/
│ └── README.md
└── Exploit/
├── metodologia-analisis.md
├── Scripts/
│ ├── 01_check_connection.py
│ ├── 02_fuzz_trun.py
│ ├── 03_send_pattern.py
│ ├── 04_verify_eip_control.py
│ ├── 05_send_badchars.py
│ ├── 06_test_jmp_esp.py
│ └── 07_final_payload.py
└── images/
Metodologia completa: metodologia-analisis.md
Script attuali:
01_check_connection.py: verifica la connettività e il banner del servizio.02_fuzz_trun.py: fuzzing incrementale del comando MKD.03_send_pattern.py: invio del pattern ciclico generato da Mona.04_verify_eip_control.py: validazione del controllo dell'EIP (BBBB).05_send_badchars.py: invio di bytearray.bin per rilevare i badchars.06_test_jmp_esp.py: test di ritorno con indirizzo JMP ESP.07_final_payload.py: invio del payload finale con shellcode.127.0.0.1:21.Questo laboratorio è progettato per l'apprendimento tecnico, la validazione dei controlli e test autorizzati nel proprio ambiente. Non deve essere utilizzato su sistemi senza permesso esplicito.
Dalla radice del repo:
cd Exploit
python .\Scripts\01_check_connection.py
python .\Scripts\02_fuzz_trun.py
python .\Scripts\03_send_pattern.py
python .\Scripts\04_verify_eip_control.py
python .\Scripts\05_send_badchars.py
python .\Scripts\06_test_jmp_esp.py
python .\Scripts\07_final_payload.py
Nota: per 03_send_pattern.py e 05_send_badchars.py devi avere Mona configurato e i file in C:\mona\.
| Blocco | Risorsa |
|---|
| Requisiti | requirements.md |
| Programmazione | git.md, java-jdk.md, netcat.md, python3.md |
| IDE | notepad++.md, pycharm.md, vscode.md |
| Debugger | immunity-debugger.md |
| Disassembler | ghidra.md, ida-free.md |
| Strumentazione exploit | mona-immunity.md |
| App vulnerabili | freefloatftpserver.md, vulnserver.md |