domingo, 15 de junio de 2025

04 - Lab: SQL injection attack, querying the database type and version on MySQL and Microsoft


SQL injection


Este laboratorio contiene una vulnerabilidad de inyección SQL en el filtro de categoría de producto. Puede utilizar un ataque UNION para recuperar los resultados de una consulta inyectada.

Para resolver el laboratorio, muestre la versión de la base de datos.


1. Usaremos Burp Suite para interceptar y modificar la request del filtro de la categoría productos

2.   Activamos el intercept  y viajamos ala siguiente url, hacemos click ene Corporate Gift




    
En burpSuite editamos el parámetro Categoría y le pegamos lo siguiente:

'+UNION+SELECT+@@version,+NULL#




Luego le damos en Forward y con esto completaremos el lab.

Podremos observar cómo nos devuelte la configuración del servidor(DB)


🧠 ¿Qué significa esta cadena?

                '+UNION+SELECT+@@version,+NULL#

                   
FragmentoSignificado
Cierra una cadena abierta en la consulta SQL original.
UNION SELECTInicia una nueva consulta para combinar resultados.
@@versionVariable del sistema que devuelve la versión del motor de base de datos (en MySQL, por ejemplo).
NULLSegundo valor ficticio para que coincida con la cantidad de columnas esperadas.
#En MySQL, indica el inicio de un comentario, ignorando el resto de la consulta original.

Supongamos que la siguiente consulta Original del servidor es esta

SELECT nombre, email FROM usuarios WHERE usuario = '$usuario';

Y tú envías el siguiente input malicioso como usuario:

' UNION SELECT @@version, NULL#

La consulta se transforma en:

SELECT nombre, email FROM usuarios WHERE usuario = '' UNION SELECT @@version, NULL#';

🎯 Resultado

Si la inyección tiene éxito, el servidor devolverá una fila con el valor de la versión del motor de base de datos. Ejemplo:

nombreemail
8.0.34NULL


Esto confirma que:

  • La inyección fue exitosa ✅

  • El backend usa MySQL versión 8.0.34



🔐 ¿Por qué es importante esto?

Conocer la versión permite a un atacante:

  • Ajustar su estrategia de ataque (hay exploits específicos por versión),

  • Buscar vulnerabilidades conocidas en esa versión,

  • Confirmar que tiene inyección tipo UNION, lo cual es muy poderosa.







No hay comentarios.:

Publicar un comentario

05 - Lab: SQL injection UNION attack, determining the number of columns returned by the query

  Lab: SQL injection UNION attack, determining the number of columns returned by the query Para el siguiente laboratorio debemos modificar e...