Inyección SQL en DVWA

| Última modificación: 14 de octubre de 2024 | Tiempo de Lectura: 2 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

El siguiente tutorial sobre cómo hacer una inyección SQL en DVWA está hecho con fines educativos. El propósito de las técnicas que veremos a continuación es identificar fallos de seguridad en aplicaciones vulnerables de manera autorizada, con el fin de reportarlos y aumentar la seguridad del sitio web.

¿Cómo hacer una inyección SQL en DVWA?

A continuación veremos un tutorial básico sobre cómo hacer una inyección SQL en esta aplicación, con un nivel bajo de dificultad.

Preparación

  • Lo primero que necesitarás es abrir o instalar una máquina virtual con el sistema operativo para pentesting Kali Linux.
  • Luego, instala la aplicación de DVWA siguiendo nuestro tutorial.
  • Ahora, ve a la dirección del servidor de la página e inicia sesión con las credenciales por defecto: “admin” y “password” (que son altamente vulnerables a propósito).
  • El siguiente paso es abrir la pestaña de DVWA que dice “DVWA Security” y seleccionar el nivel de seguridad de la aplicación en “Low”, que es el más bajo.
  • Finalmente, dirígete a la pestaña “SQL Injection“, donde encontrarás una entrada de datos que dice “User ID” y, al lado, el botón “Submit”.

Prueba

Después de preparar la aplicación de DVWA para el ataque, haremos una prueba para ver si la entrada de la página “User ID” es vulnerable a inyección de código SQL. Para saber si estamos inyectando código en la aplicación:

  • Primero, envía una comilla sencilla, es decir: ‘. Si la página devuelve un error, es altamente probable que sea vulnerable.
  • El siguiente test que haremos será ejecutar comando que verás a continuación. Si la base de datos nos devuelve una respuesta normal, quiere decir que estamos inyectando código:
3' and '1'='1
  • Nuestra última prueba será ejecutar el comando que sigue. Si la base de datos NO nos da una respuesta, quiere decir que estamos inyectando código, ya que la condición que le estaremos dando es falsa:
3' and '1'='0

Payload

Ya hemos visto cómo preparar la aplicación y probar que sea vulnerable a la inyección de código SQL. Ahora, veremos el siguiente paso de cómo hacer una inyección SQL en DVWA: ejecutar un payload.

Dependiendo del tipo de vulnerabilidad SQL, se pueden ejecutar diferentes payloads. La inyección SQL es tan peligrosa que le podría permitir a un atacante tomar control de un servidor o un equipo. No obstante, en este ejercicio, veremos el payload más básico para probar en DVWA que es:

' or 'a'='a

Este pequeño payload le dirá a la base de datos de la aplicación, en lenguaje SQL, que muestre todos los usuarios de la aplicación en pantalla.

¿Cómo aprender más sobre inyecciones SQL 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

Ya has aprendido cómo hacer una inyección SQL en DVWA de manera simple. Si quieres aprender a ejecutar payloads más complejos y convertirte en un experto, en KeepCoding tenemos un curso intensivo justo para ti. Ingresa a nuestro Ciberseguridad Full Stack Bootcamp y descubre cómo especializarte en tan solo 7 meses. ¡No sigas esperando e inscríbete ahora!

Carlos Cilleruelo

CEO and co-founder of Byron Labs & Coordinador del Bootcamp en Ciberseguridad.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Ciberseguridad

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado