Hacking con sqlmap
sqlmap
es una herramienta de código abierto que automatiza la detección y explotación de vulnerabilidades de inyección SQL. Utiliza una amplia gama de técnicas para probar, detectar y explotar fallos en una aplicación web, permitiendo al atacante acceder a la base de datos subyacente.
Aquí tienes ejemplos de cómo se utiliza sqlmap
para diferentes tareas de hacking.
1. Escaneo básico de vulnerabilidades
Este es el comando más simple para empezar. sqlmap
probará automáticamente varios métodos de inyección SQL en la URL proporcionada.
sqlmap -u "http://ejemplo.com/pagina.php?id=1"
-u: Indica la URL objetivo.
sqlmap
asumirá que el parámetroid
es el punto vulnerable a probar.
2. Enumeración de bases de datos
Una vez que se ha confirmado que la URL es vulnerable, el siguiente paso es descubrir qué bases de datos existen en el servidor.
sqlmap -u "http://ejemplo.com/pagina.php?id=1" --dbs
--dbs: Enumera todas las bases de datos disponibles en el servidor.
3. Enumeración de tablas
Con el nombre de una base de datos, puedes pedirle a sqlmap
que liste todas las tablas que contiene.
sqlmap -u "http://ejemplo.com/pagina.php?id=1" -D "nombre_de_la_bd" --tables
-D: Especifica la base de datos a investigar (por ejemplo,
users_db
).--tables: Enumera las tablas dentro de la base de datos especificada.
4. Volcar datos de una tabla
Este es el objetivo principal del ataque: extraer la información de la base de datos. En este ejemplo, se extraerán todas las columnas y filas de la tabla usuarios
.
sqlmap -u "http://ejemplo.com/pagina.php?id=1" -D "nombre_de_la_bd" -T "usuarios" --dump
-T: Especifica la tabla de la que quieres obtener los datos (por ejemplo,
usuarios
).--dump: Indica a
sqlmap
que extraiga todas las entradas de la tabla y las muestre en la consola o las guarde en un archivo.
5. Inyección con un archivo de texto
A veces, la URL vulnerable es muy larga o necesita un parámetro de POST. sqlmap
puede leer la petición directamente desde un archivo de texto.
Guarda la petición HTTP completa en un archivo llamado
request.txt
.Ejecuta el comando:
sqlmap -r request.txt --dbs
-r: Indica a
sqlmap
que lea la petición de un archivo. Es útil para trabajar con cookies, peticiones POST, y otros datos complejos.