Demo_CVE-2025-3248 — PoC Didattico
Scopo: Simulare la vulnerabilità (CVE-2025-3248) in un ambiente isolato per l'apprendimento della sicurezza informatica: allestire un laboratorio, osservare il comportamento sfruttabile e discutere le misure di mitigazione.
⚠️ DICHIARAZIONE LEGALE ED ETICA (SOLO USO ETICO)
- Tutto il contenuto di questo repository è esclusivamente per scopi accademici/di ricerca.
- Mai utilizzare il codice sorgente/le tecniche incluse per interferire con sistemi non di tua proprietà o senza autorizzazione scritta.
- Autori/contributori non sono responsabili per qualsiasi conseguenza derivante da un uso improprio.
- Utilizzando il repository, accetti i termini sopra indicati.
Indice
Introduzione
Il repository fornisce:
- Un servizio demo vulnerabile eseguito in Docker (porta predefinita
7860).
- Codice PoC (exploit.py) per inviare richieste che dimostrano lo sfruttamento solo nel tuo laboratorio.
- Documentazione per allestire l'ambiente, eseguire test, osservare e provare le misure difensive.
Architettura del laboratorio
- Tutti i test vengono eseguiti sulla tua macchina o su una rete di laboratorio che controlli.
- Non esporre questo servizio su internet.
Componenti del repository
docker-compose.yml — Allestisce il container dell'applicazione demo vulnerabile.
exploit.py — Client PoC che dimostra l'attivazione del bug (solo in laboratorio).
LICENSE — Licenza d'uso.
README.md — Il documento che stai leggendo.
Requisiti di sistema
- Docker e Docker Compose (plugin).
- Python 3.10+ e
pip (per eseguire il PoC).
- Permessi per eseguire Docker (
sudo su Linux o utente nel gruppo docker).
Avvio rapido
A. Allestire il laboratorio con Docker
git clone https://github.com/Kiraly07/Demo_CVE-2025-3248.git
cd Demo_CVE-2025-3248
# Avvia il servizio demo (in background)
docker compose up -d
# Verifica il container
docker compose ps
# Visualizza i log quando necessario
docker compose logs -f
B. Installare le dipendenze per il PoC
python -m venv venv
# Linux/macOS
source venv/bin/activate
# Windows PowerShell
# .\venv\Scripts\Activate.ps1
pip install --upgrade pip
pip install requests colorama argparse
(Facoltativo) crea requirements.txt:
requests
colorama
argparse
C. Eseguire il PoC sul laboratorio locale
# Esempio di base
python exploit.py -u http://[TARGET]:7860
Nota importante: Punta --url solo a localhost/alla tua macchina di laboratorio. Non prendere di mira sistemi fuori dall'ambito autorizzato.
Personalizzazione della configurazione
- Porta del servizio: modifica la sezione ports: in docker-compose.yml.
- Rete Docker: puoi aggiungere una rete separata per isolare il container (consigliato in laboratori complessi).
- Reverse proxy: se necessario, posizionalo dietro Nginx e apri solo localmente (127.0.0.1 o rete interna).
Pulizia
# Ferma e rimuovi container/volumi
docker compose down -v
# (Facoltativo) Rimuovi venv
deactivate 2>/dev/null || true
rm -rf venv
Note difensive / mitigazioni
- Aggiorna il software alla versione patchata quando disponibile.
- Limita la superficie di attacco: apri solo le porte necessarie; posiziona dietro un reverse proxy con autenticazione.
- Principio del minimo privilegio per i container:
- Esegui con utente non privilegiato.
- Limita le capability, abilita il root FS in sola lettura se possibile.
- Separa la rete, non montare dischi sensibili.
- Monitoraggio e log: abilita gli access log; monitora pattern sospetti; allerta precoce.
- WAF/IDS/IPS: applica dove appropriato; valida sempre l'input.
Risoluzione dei problemi
- Porta 7860 occupata: cambia il mapping della porta (es. 8080:7860) in docker-compose.yml.
- Il container non si avvia: controlla i log con docker compose logs -f.
- Permessi Docker mancanti: usa sudo o aggiungi l'utente al gruppo docker.
- Errore di installazione dei pacchetti Python: aggiorna pip e controlla proxy/firewall interno.
Percorso di apprendimento suggerito
- Leggi docker-compose.yml per comprendere la superficie di attacco/le dipendenze.
- Esegui il PoC sul laboratorio locale, registra le richieste/risposte HTTP.
- Prova le misure di mitigazione, riesegui il PoC per valutarne l'efficacia.
- Scrivi un report: causa principale del bug, catena di sfruttamento, impatto e raccomandazioni.
Licenza
- Consulta il file LICENSE nella radice del repository.
Ribadire l'impegno per un uso etico
Questo repository è stato creato solo per scopi didattici.
Non utilizzarlo per scopi non autorizzati. Chiedi sempre un'autorizzazione esplicita prima di testare la sicurezza su qualsiasi sistema che non sia di tua proprietà.