Ethical Hacker con AI

DVWA

Damn Vulnerable Web Application. Come usarla

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:

⚙ 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:

💻 Risorse ufficiali e link utili

⚡ 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 DVWA nella document root di MAMP:
    • macOS: /Applications/MAMP/htdocs/
    • Windows: cartella di installazione MAMP, sottocartella htdocs
  • Apri phpMyAdmin da MAMP e crea un database (ad esempio dvwa).
  • Apri http://localhost/DVWA/setup.php e segui le indicazioni per inizializzare il database MySQL e completare la configurazione.
  • Se richiesto, modifica config/config.inc.php impostando 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-dvwa su Docker Hub) e accedi poi a http://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.php coincidano 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)

Articolo generato da ChatGPT.

Livio Bollini
Walter Livio Bollini

Matematico & Informatico · Intelligenza Artificiale · Sviluppo Web