Saltar a contenido

Práctica 05.-Extraer datos con sqlmap

Extracción del Banner de la Base de Datos con sqlmap en DVWA

En esta práctica, utilizaremos la herramienta sqlmap para explotar la vulnerabilidad de inyección SQL (SQLi) en la funcionalidad "SQL Injection" de Damn Vulnerable Web Application (DVWA) y extraer el banner de la base de datos, que nos proporcionará información sobre el motor y la versión del sistema de gestión de bases de datos (DBMS).


1. Requisitos Previos

✔️ DVWA ejecutándose en Metasploitable ✔️ Nivel de seguridad configurado en "Low" (DVWA Security → Low) ✔️ sqlmap instalado en la máquina atacante (Kali Linux o Parrot OS)


2. Identificar la URL Vulnerable en la Funcionalidad "SQL Injection"

Para utilizar sqlmap, primero debemos localizar la URL vulnerable de la funcionalidad SQL Injection en DVWA.

📌 Ejemplo de URL de prueba:

http://<IP-METASPLOITABLE>/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit

⚠️ Reemplaza <IP-METASPLOITABLE> con la IP real de tu máquina Metasploitable.


3. Utilizar sqlmap para Extraer el Banner de la Base de Datos

Ahora, ejecutaremos sqlmap para obtener información sobre el banner de la base de datos (versión y detalles del DBMS).

🔹 Comando sqlmap para extraer el banner:

sqlmap -u "http://<IP-METASPLOITABLE>/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit" --banner

4. Interpretar los Resultados

Si la aplicación es vulnerable, sqlmap mostrará un resultado similar a este:

Database Management System: MySQL
Server version: 5.5.60-0+deb7u1 (Debian)

📌 Esto confirma que el backend utiliza MySQL 5.5.60.


5. Prevención del Ataque

Para mitigar vulnerabilidades de inyección SQL, es recomendable:

🔹 Usar consultas parametrizadas (Prepared Statements). 🔹 Escapar caracteres especiales antes de ejecutar consultas SQL. 🔹 Implementar validación estricta de entradas del usuario. 🔹 Limitar los privilegios de la base de datos a solo las operaciones necesarias.


6. Conclusión

Usando sqlmap, hemos logrado identificar la versión exacta del DBMS explotando una vulnerabilidad de inyección SQL en DVWA. Con esta información, un atacante podría buscar vulnerabilidades específicas para esa versión de MySQL y realizar ataques más avanzados.

¡Puedes continuar probando sqlmap para extraer nombres de bases de datos, tablas y registros! 🚀