
Valutazione della sicurezza delle applicazioni web di DVWA utilizzando OWASP ZAP — scansione delle vulnerabilità, analisi dell'RCE (CVE-2012-1823) e report di remediation.
Una valutazione pratica della sicurezza di un'applicazione web su DVWA (Damn Vulnerable Web App), eseguita utilizzando OWASP ZAP (Zed Attack Proxy) 2.17.0. Questo progetto documenta l'intero flusso di lavoro: ricognizione (spidering), scansione automatizzata delle vulnerabilità e analisi degli alert generati — incluso un riscontro di esecuzione remota di codice (CVE-2012-1823).
⚠️ Disclaimer: Questa valutazione è stata eseguita in un ambiente di laboratorio isolato contro DVWA, un'applicazione costruita intenzionalmente per essere vulnerabile a scopo di formazione. Non scansionare o attaccare mai sistemi che non possiedi o per i quali non hai ricevuto esplicita autorizzazione scritta.
Identificare e documentare le vulnerabilità web comuni in DVWA utilizzando le funzionalità di spidering e scansione attiva di OWASP ZAP, e fare pratica nella lettura, interpretazione e reportistica dei risultati di scansioni di sicurezza automatizzate.
| Strumento | Scopo |
|---|---|
| OWASP ZAP 2.17.0 | Scansionatore di vulnerabilità per applicazioni web (spider + scansione attiva) |
| DVWA | Applicazione web PHP/MySQL intenzionalmente vulnerabile usata come target |
| Kali Linux | Piattaforma di attacco/test |
http://192.168.109.115/dvwa/index.phpadminLa scansione attiva è stata completata con 1.157 richieste inviate e 72 nuovi alert generati, che ZAP ha raggruppato in 17 tipi di alert distinti:
Il dettaglio completo per ogni alert è disponibile in
docs/findings.md.
Il problema più grave identificato è stata una vulnerabilità di esecuzione remota di codice ad alto rischio, tracciata con CVE-2012-1823 (una nota falla di parsing della query string in PHP-CGI).
http://192.168.109.115/dvwa/login.php?-d+allow_url_include%3d1+-d+auto_prepend_file%3dphp://input= non escapato. Questo consente a un attaccante di passare flag in stile riga di comando (-d allow_url_include=1 -d auto_prepend_file=php://input) all'interprete PHP, permettendo l'esecuzione di codice PHP arbitrario e la divulgazione del codice sorgente.mod_rewrite con le direttive RewriteCond/RewriteRule per bloccare le query string malformate prima che raggiungano PHP-CGI.X-Frame-Options / frame-ancestors).HttpOnly e SameSite su tutti i cookie per ridurre il rischio di session hijacking e CSRF.dvwa-zap-pentest/
├── README.md # Questo file — panoramica e riepilogo del progetto
├── docs/
│ └── findings.md # Analisi dettagliata completa di ogni alert
├── screenshots/ # Screenshot numerati citati sopra
└── LICENSE
admin.Questo progetto è stato creato a scopo educativo come parte di un esercizio di apprendimento sulla sicurezza delle applicazioni web.
| # | Alert | Istanze | Rischio |
|---|
| 1 | Esecuzione remota di codice — CVE-2012-1823 | 2 | 🔴 Alto |
| 2 | Divulgazione del codice sorgente — CVE-2012-1823 | 2 | 🔴 Alto |
| 3 | Assenza di token anti-CSRF | 2 | 🟠 Medio |
| 4 | Header Content Security Policy (CSP) non impostato | 4 | 🟠 Medio |
| 5 | Elencazione delle directory | 3 | 🟠 Medio |
| 6 | Sito solo HTTP | 1 | 🟠 Medio |
| 7 | Trovato file nascosto | 1 | 🟠 Medio |
| 8 | Header anti-clickjacking mancante | 2 | 🟠 Medio |
| 9 | Cookie senza flag HttpOnly | 2 | 🟡 Basso |
| 10 | Cookie senza attributo SameSite | 2 | 🟡 Basso |
| ... | (7 altri alert informativi/bassi — vedi l'export completo di ZAP) | ⚪ Info |
| Screenshot | Descrizione |
|---|
![]() | Pagina home di DVWA dopo il login |
![]() | Schermata di benvenuto di OWASP ZAP 2.17.0 |
![]() | Scheda Scansione Automatizzata prima dell'inserimento del target |
![]() | URL target impostato su DVWA prima di lanciare l'attacco |
![]() | 17 tipi di alert scoperti (raggruppati per rischio) |
![]() | Alert RCE (CVE-2012-1823) — URL, rischio, payload di attacco, evidenze |
![]() | RCE (CVE-2012-1823) — descrizione, altre informazioni e soluzione |
![]() | Scansione attiva al 100% — 1.157 richieste, 72 nuovi alert |
![]() | Risultati dello spider — 9 URL trovati, 7 nodi aggiunti |