DVWA (Damn Vulnerable Web Application): dove trovarla, come installarla e usarla con MySQL nel tuo laboratorio
📚 Cosa è DVWA (spiegazione semplice)
DVWA sta per Damn Vulnerable Web Application. È un'applicazione web in PHP, volutamente vulnerabile, progettata per studiare e allenarsi sulle principali vulnerabilità delle applicazioni web in un ambiente controllato. Integra livelli di sicurezza (Low, Medium, High) per modulare la difficoltà degli esercizi e capire come difendersi.
🔍 Dove trovare DVWA (download e immagini)
Le fonti consigliate per ottenere DVWA sono:
- Repository ufficiale su GitHub: github.com/digininja/DVWA
- Immagini pronte su Docker Hub: hub.docker.com/r/vulnerables/web-dvwa
- Guide e Dockerfile alternativi utili: github.com/cytopia/docker-dvwa
⚙ Prerequisiti: cosa serve (stack con MySQL)
Componenti minimi
- Web server (Apache consigliato)
- PHP (versione compatibile con DVWA)
- MySQL come database
Puoi ottenere questi componenti in due modi semplici:
- MAMP su macOS o Windows (include Apache, PHP e MySQL): mamp.info/en/downloads
- Docker (container con DVWA già pronto): docker.com
💻 Risorse ufficiali e link utili
- DVWA (GitHub): github.com/digininja/DVWA
- DVWA (Docker Hub): vulnerables/web-dvwa
- MAMP (download): mamp.info/en/downloads
- VirtualBox (per ambienti virtualizzati): virtualbox.org/wiki/Downloads
- Nmap (scanner di rete): nmap.org/download
- Burp Suite (proxy di test): portswigger.net/burp
- OWASP ZAP (proxy gratuito): zaproxy.org/download
⚡ Installazione con MAMP e MySQL (facile e locale)
Passi consigliati (macOS o Windows)
- Installa MAMP e avvialo, assicurandoti che Apache e MySQL siano in esecuzione.
- Scarica DVWA dal repository GitHub e copia la cartella
DVWAnella document root di MAMP:- macOS:
/Applications/MAMP/htdocs/ - Windows: cartella di installazione MAMP, sottocartella
htdocs
- macOS:
- Apri phpMyAdmin da MAMP e crea un database (ad esempio
dvwa). - Apri
http://localhost/DVWA/setup.phpe segui le indicazioni per inizializzare il database MySQL e completare la configurazione. - Se richiesto, modifica
config/config.inc.phpimpostando host, utente, password e nome del DB MySQL.
🛠 Installazione alternativa con Docker (MySQL nel container)
Avvio rapido
- Installa Docker dall'apposita pagina e verifica che sia attivo.
- Esegui un'immagine DVWA che includa lo stack con MySQL già configurato (esempio:
vulnerables/web-dvwasu Docker Hub) e accedi poi ahttp://localhost. - Controlla i log del container in caso di errori e segui le istruzioni di setup via interfaccia DVWA.
📝 Esempio pratico: usare DVWA nel laboratorio virtuale
Workflow didattico
- Preparazione: metti la macchina DVWA e la VM attaccante (es. Kali) sulla stessa rete Host-Only o Internal e crea snapshot puliti.
- Discovery: da Kali esegui Nmap per identificare IP e servizi (es.
nmap -sS -sV <IP_target>) e confermare l'esposizione HTTP. - Proxy e analisi: imposta Burp Suite o OWASP ZAP come proxy del browser, visita DVWA e osserva richieste e risposte.
- Livelli di sicurezza: nella dashboard DVWA imposta il livello (Low, Medium, High) per studiare vulnerabilità e mitigazioni.
- Report: redigi un report didattico con le vulnerabilità riscontrate e le contromisure; al termine ripristina gli snapshot.
⚠ Note di sicurezza essenziali
DVWA è intenzionalmente vulnerabile: non esporla mai su Internet pubblico. Usala solo in una rete isolata del tuo laboratorio e con autorizzazione. Effettua snapshot prima di ogni prova e ripristina a fine esercitazione.
📋 Suggerimenti pratici e troubleshooting
Problemi frequenti
- Errore di connessione al DB: verifica che MySQL sia attivo (MAMP) e che le credenziali nel file
config/config.inc.phpcoincidano con quelle del database creato. - Nessun traffico intercettato: controlla le impostazioni del proxy nel browser per Burp/ZAP e installa il certificato CA se analizzi HTTPS.
- Con Docker non parte: consulta i log del container (
docker logs) per capire eventuali errori di inizializzazione.
📚 Risorse consigliate (link rapidi)
- DVWA (GitHub): github.com/digininja/DVWA
- DVWA (Docker Hub): vulnerables/web-dvwa
- MAMP (download): mamp.info/en/downloads
- VirtualBox (download): virtualbox.org
- Nmap (download): nmap.org/download
- Burp Suite (community): portswigger.net/burp
- OWASP ZAP (download): zaproxy.org/download
Articolo generato da ChatGPT.