martes, 14 de enero de 2014

SQL Injection con SQLMap

Buenas hackers!! 
Hoy traigo uno de los pilares del pentester cuando se intenta explotar vulnerabilidades SQL en aplicaciones web y es SQLmap, una excelente herramienta para automatizar el proceso aunque no son muy limpias aparte de ruidosas, ¿pero queremos ver su potencial no?

Usaremos el laboratorio que teníamos, simplemente porque no me apetece ir a la cárcel, prefiero el aire fresco ;)

¿Que necesitamos para hacer nuestras practicas?
Herramienta: Sqlmap, y nuestro laboratorio para entrenar.
Dificultad: Fácil.



Empezamos!!

La sintaxis como veréis es muy simple y vamos a ver lo mas basico, si alguno tiene dudas puede consultar la ayuda de sqlmap con: /usr/bin/sqlmap --help


Lo primero que vamos a hacer es sacar las Databases que tenga ese servidor, la sintaxis es: /usr/bin/sqlmap -u http://192.168.1.34:8080/sqli/sqli.php?id=1 --dbs

Y el resultado es una mina de datos, entre ellos podemos saber que es un MYSQL 5.0.11 y sus DB, yo elegiré sqlinjection.
sqli2

Lo siguiente es sacar las tablas de una base de datos, vamos allá: /usr/bin/sqlmap -u http://192.168.1.34:8080/sqli/sqli.php?id=1 -D sqlinjection --tables
sqli tablas

Y el resultado nos devuelve de sqlinjection es solo una tabla llamada: clientes.
sqlitablas


Ahora vamos a sacar las columnas de la tabla clientes con:
/usr/bin/sqlmap -u http://192.168.1.34:8080/sqli/sqli.php?id=1 -D sqlinjection -T clientes --columns
sqli columnas

Y nos devuelve 5 columnas: la primera columna es el nombre y la segunda el tipo de los datos que alojan, varchar para letras,números y símbolos mientras que int es para números entre paréntesis el la longitud máxima que aloja.
columnas dump


Y ahora sacamos los datos que tienen en esta tabla así que sacaremos todo porque es pequeña con:
/usr/bin/sqlmap -u http://192.168.1.34:8080/sqli/sqli.php?id=1 -D sqlinjection -T clientes -C user,email,id,password,saldo --dump
dump sqli datos

Y el resultado es toda la base de datos a nuestra mano, aquí debéis tener cuidado si la información tiene miles de registros. Para testear lo ideal es seleccionar solo el id y luego ya le tiras con todo.
datos sqli

Espero que les guste este primer contacto con sqlmap y pronto vendrán mas.


Saludos guerreros!

No hay comentarios:

Publicar un comentario