Blind SQLi - Select a una BD distinta

Iniciado por kicking people, 16 Diciembre 2009, 06:04 AM

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

kicking people

Buenas, encontré una página vulnerable a BSQLi que corre MySQL. Realizo el BSQLi en una de las condiciones del campo WHERE.
Logré acceder a los datos en las tablas, pero llegado un punto me tope con el siguiente problema. Los datos a los que quiero acceder no se encuentran en la BD de los que se sirve la aplicación, sino que estan en otra. Por ejemplo, el SELECT vulnerable se hace de la Tabla1 en la BD1 y yo quiero acceder a la Tabla2 de la BD2. Intente haciendo un SELECT BD2.Tabla1 pero no anduvo. Buscando más conseguí hacer un disclosure de algunos .php, y me hice con el user y pass para la BD2, la pregunta es como realizar un SELECT que pase el usuario y la pass para que me permita tener acceso a la BD2.
Saludos!

Castg!

mira por lo que yo tengo entendido, cuando consultas algo en una inyeccion sql se consultan en todas las bases de datos. seguro estaras buscando algun user de admin o algo, si es asi y es que existe el "admin.php" y no encontras nada en la base de datos es porq se comprueba en el mismo admin.php, asiq ue trata de cargar el archivo. igual por si queres ver las bases de datos yo ya habia preguntado esto en este mismo foro, asi que falta un cachito de google ahi :P http://foro.elhacker.net/nivel_web/bases_de_datos_en_sqli-t275216.0.html

kicking people

Cita de: castg" en 16 Diciembre 2009, 14:21 PM
mira por lo que yo tengo entendido, cuando consultas algo en una inyeccion sql se consultan en todas las bases de datos.

¿en todas las bases de datos? eso no me queda muy claro

Cita de: castg" en 16 Diciembre 2009, 14:21 PM
seguro estaras buscando algun user de admin o algo, si es asi y es que existe el "admin.php" y no encontras nada en la base de datos es porq se comprueba en el mismo admin.php, asiq ue trata de cargar el archivo.

si, busco algo de eso. pero mirando los php que manejan la bd, acceden a una base de datos en la que esta la informacion de los admin.

Cita de: castg" en 16 Diciembre 2009, 14:21 PM
igual por si queres ver las bases de datos yo ya habia preguntado esto en este mismo foro, asi que falta un cachito de google ahi :P http://foro.elhacker.net/nivel_web/bases_de_datos_en_sqli-t275216.0.html

lo voy a mirar mejor lo que me pasaste porque hasta donde veo el acceso a la otra bd se lo da pasandole algo asi, SELECT * FROM BD2.tabla, si es así ya lo probé y no devuelve nada. Supongo que será porque necesita el usuario y contraseña (que ya los tengo) para acceder a la BD2. lo que me falta es como pasarle esos datos.
Gracias y saludos!



fede_cp

fiajte que cuando haces consultas (nose si habras visto mysql), la tabla por defecto es information_schema, y cuando haces las consultas las primeras 17 tablas son de dicha base de datos information_schema, con castg estubimos hablando y estubimos pensando de que cuando haces una consulta te consulta a todas las tablas de todas las bd, porque cuando pasas las 17 tablas primeras, pasa a la segunda base de datos.

saludos!
somos lo que hacemos para cambiar lo que somos

http://elhackerblog.blogspot.com el blog de elhacker.net!!

WHK

Todo depende, si ambas bases de datos funionan bajo el mismo usuario de acceso de la base de datos entonces podrás acceder a ella, en caso contrario tendrías que hacer una nueva conexión a la base de datos y desde una inyección sql no lo podrías hacer.

CitarSELECT * FROM BD2.tabla, si es así ya lo probé y no devuelve nada
Si es blind entonces no debería devolver nada xD, si no es blind entonces vee que usuario está corriendo con user()