Foro de elhacker.net

Seguridad Informática => Nivel Web => Mensaje iniciado por: revealer en 18 Febrero 2009, 04:03 am



Título: Inyección SQL a sitio con nombre de tabla y todos los campos conocidos.
Publicado por: revealer en 18 Febrero 2009, 04:03 am
Encontré un sitio con una vulnerabilidad importante y estoy tratando de obtener de alguna forma los contenidos de la tabla.
Código:
'); SELECT * FROM nombretabla; --

Querría hacer algo así, la consulta se ejecuta correctamente pero no se como visualizar los contenidos que devuelve :huh:

Muchas gracias.


Título: Re: Inyección SQL a sitio con nombre de tabla y todos los campos conocidos.
Publicado por: WHK en 18 Febrero 2009, 04:51 am
Lo que sucede es que de esa forma no te devolverá el resultado, me explico:

Supongamos que la tabla contiene 5 columnas de las cuales la query hace un select * para obtener esos 5 datos, con eso podemos poner en pantalla datos como nombre, apellido, edad, telefono y mail.. luego esos datos se muestran en la web pero cuando haces una inyección y quieres ver los resultados no te vale de nada hacer otro select porque lo que debuelva no va a concordar con los datos que necesita el script en php o asp.
Lo que debes hacer en ese caso es un "union select", por ejemplo index,php?id=1 ya sabemos que retorna 5 datos y le ponemos index.php?id=-1 union select 1,2,3,4,5 y te debolverán esos 5 valores en la web y ya con eso puedes imprimir mas datos como from otra tabla etc etc..

Date una buelta por acá:
http://foro.elhacker.net/nivel_web/los_temas_mas_destacados_sobre_fallas_y_explotaciones_a_nivel_web-t244090.0.html
y verás varios contenidos muy buenos sobre inyecciones sql.


Título: Re: Inyección SQL a sitio con nombre de tabla y todos los campos conocidos.
Publicado por: OzX en 18 Febrero 2009, 18:55 pm
es MSSQL? o Mysql? o Postgresql?


Título: Re: Inyección SQL a sitio con nombre de tabla y todos los campos conocidos.
Publicado por: revealer en 19 Febrero 2009, 00:19 am
MSSQL y el sitio trabaja con ASP.


Título: Re: Inyección SQL a sitio con nombre de tabla y todos los campos conocidos.
Publicado por: KarlosVid(ÊÇ) en 21 Marzo 2009, 19:14 pm
 :) Amig@s la forma de protegerse de inyecciones es utilizando procedimientos almacenados (Stored Procedure).