¿Cómo hacer un ataque XSS persistente?

Autor: | Última modificación: 26 de octubre de 2022 | Tiempo de Lectura: 3 minutos
Temas en este post: ,

¿Cómo hacer un ataque XSS persistente en un entorno de práctica para hacking web?

El hacking web es una disciplina que se utiliza para poner a prueba la seguridad de las aplicaciones web y encontrar sus puntos débiles. Para aprender estos conocimientos, existen entornos de práctica en donde es apropiado practicar técnicas de hacking y, así, entender los principales fallos de seguridad que afectan a las páginas web.

En este tutorial, hecho con fines académicos, usaremos un entorno de práctica de hacking web llamado Damn Vulnerable Web Application o DVWA. El ataque que practicaremos es conocido como XSS persistente y, para entrar en contexto, explicaremos brevemente de qué se tratan esta aplicación y este tipo de ciberataque.

DVWA

Damn Vulnerable Web Application o DVWA es una aplicación web que contiene fallos de seguridad conocidos deliberadamente, como vulnerabilidades XSS, SQL o contraseñas débiles, entre otros. Esta herramienta sirve para practicar ciberataques web y, así, aprender a identificar este tipo de fallos en aplicaciones para mejorar su seguridad.

XSS

El cross-site scripting (XSS) es un ciberataque web que permite inyectar código JavaScript en el navegador de una víctima por medio de una aplicación vulnerable. Existen tres tipos de XSS:

  • Reflejado.
  • Persistente.
  • Basado en DOM.

En el XSS persistente, ejecutaremos el código inyectado en el navegador de todos los que visiten la página, sin necesidad de interactuar con ellos de ningún modo, ya que el payload se almacena en la base de datos de la aplicación web.

A continuación, veremos cómo hacer un ataque XSS persistente en DVWA.

¿Cómo hacer un ataque XSS persistente en DVWA?

🔴 ¿Quieres entrar de lleno a la Ciberseguridad? 🔴

Descubre el Ciberseguridad Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp en Ciberseguridad por una semana

El primer paso para aprender cómo hacer un ataque XSS persistente es instalar la aplicación de DVWA en una máquina virtual con sistema operativo Kali Linux. Para ello, visita nuestro tutorial sobre cómo instalar DVWA en Kali. Una vez instalado, verifica en la pestaña de «Set up» que la seguridad de la página esté configurada en «Low».

Ahora, dirígete a la pestaña de la página que dice «XSS (Stored)» y haz clic en ella. Allí, encontrarás dos entradas de datos que se almacenan en la página:

  • Name.
  • Message.

Y, después de estos campos, aparecen dos botones:

  • Sign Gestbook.
  • Clear Gestbook.

Es decir, la página simula ser una especie de foro, donde se guardan los mensajes escritos por los visitantes. Sin embargo, si los inputs de los usuarios no son validados correctamente, estas entradas nos pueden permitir ejecutar código JavaScript en el navegador de quienes visiten la página. Esto lo haremos del siguiente modo.

  1. Intercepta las peticiones con Burp Suite. La manera más sencilla de hacerlo es abrir el programa, que viene preinstalado en Kali, y ejecutar el navegador que tiene incorporado en su última versión. Desde allí, acceder a la página de DVWA.
  2. Envía un comentario cualquiera al Guestbook de la aplicación.
  3. Intercepta la petición en Burp Suite y envíala al módulo «Repeater» con clic derecho y «Send to repeater».
  4. En el módulo repeater, modifica el mensaje que enviaste por el payload en JavaScript que encontrarás al final de esta lista.
  5. Envía la petición modificada en el repeater y elimina la petición original.

El payload que puedes utilizar para este ejercicio es:

<script>window.location.replace("http://www.google.com");</script>

Con este código de JavaScript, redirigiremos todo el tráfico de clientes que deseen ingresar a esa pestaña de la aplicación hacia la página de Google. Del mismo modo, un atacante podría usar esta vulnerabilidad para redirigir el tráfico hacia sitios web maliciosos.

¿Cómo aprender más?

Ya hemos visto cómo hacer un ataque XSS persistente en DVWA. Si quieres aprender a hacer más ataques de cross-site scripting y otras técnicas de hacking web, en KeepCoding tenemos el mejor curso intensivo para ti. Ingresa a nuestro Ciberseguridad Full Stack Bootcamp y descubre cómo convertirte en un especialista en tan solo 7 meses. Aprende sobre temas como recopilación de información, red team/blue team, criptografía, análisis de malware, pentesting y mucho más. ¡No sigas esperando para solicitar información e impulsa tu futuro ahora!

[email protected]

¿Trabajo? Aprende a programar y consíguelo.

¡No te pierdas la próxima edición del Aprende a Programar desde Cero Full Stack Jr. Bootcamp!

 

Prepárate en 4 meses, aprende las últimas tecnologías y consigue trabajo desde ya. 

 

Solo en España hay más de 120.400 puestos tech sin cubrir, y con un sueldo 11.000€ por encima de la media nacional. ¡Es tu momento!

 

🗓️ Próxima edición: 13 de febrero

 

Reserva tu plaza descubre las becas disponibles.