From 030280ef5ee92ff4d92f4c3abc5245b266fffac2 Mon Sep 17 00:00:00 2001 From: ChinoxChinox159 Date: Mon, 17 Mar 2025 22:06:31 -0500 Subject: [PATCH] Update reto.md --- RETO/Marcos_Criollo/reto.md | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/RETO/Marcos_Criollo/reto.md b/RETO/Marcos_Criollo/reto.md index 144ad427..6275cf66 100644 --- a/RETO/Marcos_Criollo/reto.md +++ b/RETO/Marcos_Criollo/reto.md @@ -1 +1,30 @@ -# Hola +# Laboratorio 10: SQL Injection UNION Attack, Retrieving Multiple Values in a Single Column +## Objetivo +Mostrar usuario y contraseña en una tabla e iniciar sesión como **ADMINISTRATOR** +![Diagrama SQL](captura.png) + +--- + +## Análisis de la Base de Datos + +En primer lugar identificamos o nos guiamos de una sentencia base la cual después de la estructura de category en nuestro caso "Accesorios", realizamos una busqueda de tipo 'UNION SELECT: con el fin de encontrar en que columna se encuentra alojado las tablas. + +'UNION SELECT NULL-- primera columna (-- para terminar la sentencia) + +'UNION SELECT NULL, NULL-- segunda columna, obtenemos un resultado con el cual conluimos que en la posición 2 se encuentran alojadas las tablas como se observa en la imgane. + +![Diagrama SQL](captura1.png) +El segundo campo de la base de datos es el campo de la columna que almacena los títulos. + +Se realiza la siguiente búsqueda partiendo de lo descubierto: el **campo dos** es donde se debe inyectar información. En este caso, para localizar el **nombre de la tabla** que se desea atacar. + +Se encuentra la tabla `users`, y se verifica que es la misma que proporciona el laboratorio. + +## Obtención de Datos + +A continuación, se ejecuta una búsqueda para listar todos los campos dentro de la tabla `users`. + +Consulta modificada siguiendo la **SQL Injection Cheat Sheet**, considerando que se trabaja en **PostgreSQL**: + +```sql +SUBSTRING('foobar', 4, 2)