Saltar a contenido

Práctica 02.-Cross Site Scripting Almacenado con BurpSuite

Ataque de Cross-Site Scripting (XSS) Almacenado en DVWA usando Burp Suite

En esta práctica, realizarás un ataque de Cross-Site Scripting (XSS) Almacenado en la funcionalidad "XSS Stored" de Damn Vulnerable Web Application (DVWA) utilizando Burp Suite. Este tipo de vulnerabilidad permite inyectar código malicioso que se almacena en la base de datos y se ejecuta en los navegadores de otros usuarios que accedan a la página afectada.


1. Requisitos Previos

✔️ DVWA ejecutándose en Metasploitable ✔️ Nivel de seguridad configurado en "Low" (DVWA Security → Low) ✔️ Burp Suite instalado y configurado como proxy


2. Configurar Burp Suite como Proxy de Interceptación

1️⃣ Abrir Burp Suite y asegurarse de que el proxy está activado. 2️⃣ Configurar el navegador para que utilice Burp Suite como proxy HTTP.

  • Firefox: Ir a Opciones → Red → Configuración → Proxy Manual
  • Proxy: 127.0.0.1
  • Puerto: 8080 3️⃣ Acceder a DVWA a través del navegador con Burp activado:
http://<IP-METASPLOITABLE>/dvwa

3. Capturar la Petición de Inyección en "XSS Stored"

1️⃣ Ir a la funcionalidad "XSS Stored" en DVWA. 2️⃣ Introducir un comentario en el formulario y capturarlo con Burp Suite. 3️⃣ En Burp Suite, ir a la pestaña "Proxy" → "Intercept" y asegurarse de que la captura está activada. 4️⃣ Enviar la solicitud con el siguiente payload malicioso en el campo de comentario:

📌 Ejemplo de payload XSS almacenado:

<script>alert('¡XSS Almacenado!');</script>

5️⃣ Presionar "Submit" en DVWA para capturar la petición.

📌 Ejemplo de solicitud HTTP capturada en Burp Suite:

POST /dvwa/vulnerabilities/xss_s/ HTTP/1.1
Host: <IP-METASPLOITABLE>
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: 100
Cookie: security=low; PHPSESSID=123456789abcdef
Connection: close

name=Pedro&message=<script>alert('¡XSS Almacenado!');</script>&Submit=Submit

4. Modificar y Reenviar la Petición desde Burp Suite

1️⃣ En Burp Suite, ir a la pestaña "Intercept" y modificar la solicitud si es necesario. 2️⃣ Enviar la solicitud al servidor haciendo clic en "Forward".


5. Verificación del Ataque

1️⃣ Refrescar la página de comentarios en DVWA. 2️⃣ Si el ataque ha sido exitoso, el navegador ejecutará el código JavaScript al cargar la página. 3️⃣ Se mostrará una alerta con el mensaje "¡XSS Almacenado!".


6. Prevención del Ataque

🔹 Escapar caracteres especiales (<, >, ", ', &) en la salida de los datos ingresados por el usuario. 🔹 Implementar Content Security Policy (CSP) para restringir la ejecución de scripts inyectados. 🔹 Usar el atributo HttpOnly en cookies para evitar su robo mediante JavaScript.


7. Conclusión

Usando Burp Suite, has logrado explotar una vulnerabilidad de XSS Almacenado en DVWA. Este ataque demuestra cómo un atacante puede inyectar código malicioso en una aplicación vulnerable y afectará a todos los usuarios que accedan a la página comprometida.

¡Ahora puedes probar con diferentes payloads y configurar el nivel de seguridad en "Medium" o "High" para analizar cómo cambia la protección contra XSS en DVWA! 🚀