IDF Cyber Academy
← Labs

Lab · Inicial

DVWA

Damn Vulnerable Web Application. PHP/MariaDB con módulos por vulnerabilidad y cuatro niveles de dificultad.

PHPSQLiXSSCSRFFile Upload
Opción principal

GitHub Codespaces

Entorno en la nube con Docker incluido. Solo requiere una cuenta de GitHub y consume la cuota gratuita personal de Codespaces. El puerto 4280 se reenvía de forma privada.

Alternativa

Docker local

Con Docker instalado, un solo comando levanta el lab en http://127.0.0.1:4280/ (enlazado a 127.0.0.1, nunca expuesto a la red).

git clone https://github.com/idefensechile/lab-dvwa.git && cd lab-dvwa && docker compose up -d

Detener: docker compose down

Imagen
ghcr.io/digininja/dvwa:latest
Puerto
127.0.0.1:4280
Proyecto original
digininja/DVWA

Qué es

DVWA es el clásico entorno de entrenamiento en PHP/MariaDB. Cada vulnerabilidad (inyección de comandos, SQLi, XSS, CSRF, file inclusion, file upload, etc.) es un módulo con niveles low, medium, high e impossible.

Cómo se ejecuta

El repo levanta dos contenedores: la aplicación (dvwa) y la base de datos (db, MariaDB).

  1. Abrir http://127.0.0.1:4280 (o el puerto 4280 reenviado en Codespaces).
  2. Ingresar con admin / password.
  3. Ir a Setup / Reset DB → Create / Reset Database.

Los retos guiados están en el módulo Lab: fundamentos con DVWA.

Ver soluciones (1)Contiene spoilers. Conviene intentar cada reto antes y usar el writeup solo para contrastar.