Modificacion a inyeccion SQL

Iniciado por Locky20, 26 Septiembre 2012, 15:15 PM

0 Miembros y 1 Visitante están viendo este tema.

Locky20

Buenas estuve probando un metodo de inyeccion sql de foros vb, lo cual funciona bien es mas o menos de esta forma

process&searchthreadid=cat[0]=1) UNION SELECT concat(username,0x3a,email,0x3a,password,0x3a,salt) FROM user WHERE userid=1#


cambiando el userid puedo hacer que me bote el hash y el salt de cualquier usuario pero quisiera hacerlo mas global, es decir hacer la inyeccion de tal forma que me bote el hash de todos los usuarios o al menos indicar una gran cantidad pero no se me ocurre, me parece que la clave estaria en volver dinamico el userid=1# pero no se me ocurre como indicarle que saque los hash y salt de un rango de usuarios

Alguna idea  :rolleyes:

Saludos  ;D

Søra

pasamos de: concat ----> group_concat

un saludo.





Se busca sabio para intercambio:
Todo lo que se por la mitad de lo que desconozco.

Locky20

Gracias por responder, bueno estuve probando y efectivamente se puede imprimir varios usernames y hashes, etc pero me di cuenta de que solo me imprime un puñado y leyendo di con que la funcion group_concat tiene un limite de 1024 caracteres 

Como no tengo acceso a los archivos del servidor no puedo modificar ese limite  :¬¬

tambien vi que con esta orden SET GLOBAL group_concat_max_len=4096 se puede modificar pero por mas que lo adecuo a la inyeccion siempreme bota error

haciendo experimentos tambien note que cambiando la inyeccion a &cat[0]=1) UNION SELECT concat(username) FROM user# me imprime todos los nombres de usuario, pero si cambio para que me muestre los hash o email se produce error en una linea del php y la unica forma es usando group_cancat pero como dije tiene un limite

Alguna idea o sugerencia

Saludos  ;D

darkvidhack

Hola, asegúrate de que estás insertando bien el texto, ya que con

SELECT concat(username,0x3a,email,0x3a,password,0x3a,salt) FROM user

debería mostrarte las columnas que pides de todos los usuarios

Saludos
live and let die

la duda es la base de todo conocimiento

Shell Root

No porque la consulta "debería" mostrar todos los registros, se supone que los mostraría. Si para el campo que es vulnerable, el programador le asigno que solo devolviera un tamaño maximo de caracteres obviamente este no los va a mostrar completos.

No al ejecutar una iSQL se van a mostrar todos los registros, acaso es una consola de mysql :p
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.