Este laboratorio contiene una vulnerabilidad de inyección SQL sobre los parámetros de categorías en el listado de productos. Utilizando un ataque UNION+SELECT podremos ver la versión de la base de datos interceptando la petición GET.

Mediante una petición por http GET al servidor, manipulando el string con una query maliciosa en el nombre de la categoría, accedemos a ver la versión de la base de datos. |
Se encuentra dentro del listado de laboratorios de la plataforma de Portswigger Web Security Academy dentro de la vulnerabilidad SQL injection como Practitioner.
Inicialmente lo que hacemos es acceder a la página del laboratorio, y antes de clicar en cualquier categoría, abrimos BurpSuite dentro de Kali, activamos «On» la petición y activamos el FoxyProxy para enviar a Burp la petición y así manipularla.

Una vez clicado en la categoría, nos aparecerá en el HTTP history dentro de BUrp -> Proxy la petición GET a la categoría, y entonces lo que haremos será enviarla al Repeater, desactivar Bupr y manipular la consulta de esta forma:
'+UNION+SELECT+NULL#
Queremos saber cuántas columnas hay en la base de datos y qué tipo de información se almacena para así poder usar un ataque u otro.
Al enviar la petición anterior, la respuesta nos da un error 500, por lo que no se trata de una base de datos de una columna.
Alteramos de nuevo la query con:
'+UNION+SELECT+NULL,NULL#
y efectivamente nos devuelve un código 200, por lo que tenemos 2 columnas disponibles.
Si pruebas a incluir otro ,NULL# veras que te devuelve otro error 500 por lo que no hay tres columnas.
Ahora queremos comprobar si esas columnas pueden almacenar cadenas de texto o secuencias de caracteres (strings).
Para ello modificamos de nuevo la query con:
'+UNION+SELECT+'abc',NULL#
y nos da 200, por lo que la primera columna sí lo tiene. Y con la segunda probamos por ejemplo con «def»
'+UNION+SELECT+'abc','def'#
y también nos da 200:

Por tanto ambas columnas devuelven string, así que vamos a intentar sacar la versión a través del SELECT, y para ello usaremos la consulta de Windows:
'+UNION+SELECT+@@version,+NULL#
Y al enviar la petición vemos que el Lab está resuelto devolviéndonos la versión:

Aquí puedes ver un vídeo tutorial muy bien explicado: