Laboratorio: ataque UNION de inyección SQL , recuperando múltiples valores en una sola columna
En este caso podremos recuperar multiples valores en una sola columna con el secreto del hechizo: Concatenación jeje ;)
Last updated
En este caso podremos recuperar multiples valores en una sola columna con el secreto del hechizo: Concatenación jeje ;)
Last updated
Podemos usar el doble Pipe que es un operador OR en algunos lenguajes sin embargo en bases de datos del tipo ORACLE, sirve como un separador, asi:
Por eso es muy importante saber cual es la BD que uno va a atacar (eticamente, claro) para así mismo poder saber cual es el comando SQL que uno va a inyectar porque no todas las bases de datos funcionan igual, mantienen en sintaxis ciertas cosas similares pero no todo es lo mismo.
Cualquier duda sobre comandos en SQL Para un tipo de BD especifica, dejo esta url:
Entonces lo que estaremos haciendo será separar mediante “~” el user de la pass.
Punto importante que dejamos pasar, debemos hacer ciertas cosas:
Saber cual es el numero de columnas, con NULL
Determinar que columnas son compatibles con una cadena, si hay mas de una, Nullear una y la otra dejarla para añadir el separador.
En este caso hicimos la inyeccion:
Nos arrojo error la inyeccion SQL de abajo donde concatenamos todo en +, pero estamos en una BD de Oracle, es con || ‘~’ ||
Aquí podemos ver como esta consulta si nos arrojo con exito la lista de users y contraseñas separadas por el caracter “~”, ahora bien ingresamos como admin y ureka exito el Lab.
administrator~1nv9n7aotp0yqxps8pyo
wiener~f49691bt9lzqmwmn71rf
carlos~gkj9nytdlyheiqpez5s0
Eso es todo, gracias por leerme :)