Título: Problema al intentar inyeccion SQL Publicado por: 50l3r en 3 Noviembre 2009, 14:53 pm Código: ERROR SQL: SELECT * FROM usuarios WHERE usuario=''order by 90'' AND clave=''order by 90''::SQL logic error or missing database este codigo esta sacado de un hack contest, me estoy preparando para cuando llegue a mi localidad que es dentro de dos semanas y estoy practicando ya que deje un poco de la do el deface y me dedique a programar veran, el reto consiste en superar un login sql, que digo yo, sera por inyeccion, y por lo que veo su estructura es esta SELECT * FROM usuarios WHERE usuario='$_POST[usuario]' AND clave='$_POST[clave]' el problema que tengo es que si inyecto codigo para intentar bypasear quedaria asi SELECT * FROM usuarios WHERE usuario='soler or 1= 1' AND clave='soler or 1=1' entonces los or quedarian dentro de las comillas, que podria hacer? Título: Re: Problema al intentar inyeccion SQL Publicado por: Kasi en 3 Noviembre 2009, 22:07 pm Buenas, primero tienes que conseguir salir de las comillas, la manera mas sencilla es poniendo otra comilla antes de los datos, por ejemplo :
Si la SQL de login es esta : Código: SELECT * FROM usuarios WHERE usuario='$_POST[usuario]' AND clave='$_POST[clave]' y de login pones soler y de pass 1234 quedaria : Código: SELECT * FROM usuarios WHERE usuario='soler' AND clave='1234' pero si pones de login : Código: ' or 1=1 -- Código: SELECT * FROM usuarios WHERE usuario='' or 1=1 --' AND clave='1234' Aunque la clave ya daria igual lo que pongas puesto que seria un comentario. Donde los dos guiones son comentarios (al igual que las // en C o la ' en VB) Esta es la manera mas simple de inyectar SQL, la mas conocida y por lo tanto la mas vigilada, pero bueno te sorprenderia saber que todavia existen sitios donde cuela xDD. Un saludo Título: Re: Problema al intentar inyeccion SQL Publicado por: Darioxhcx en 3 Noviembre 2009, 22:11 pm ' or '1'='1 tmb funcaria no ? (en password no user)
tmb se podria . si no me fallan los calculos user: asdas pass: asdas' or '1'='1 creo que asi lo hice una ves :¬¬ b3rz3k o algo asi el nick :P habia puesto una lista.. fijate si lo encontras x ahi saludos Título: Re: Problema al intentar inyeccion SQL Publicado por: LightOS en 3 Noviembre 2009, 22:29 pm Si la BD es MySQL, el -- no funciona, se tiene que usar -- -
entonces lo mas pratico seria ' or ' que queda asi: SELECT * FROM usuarios WHERE usuario='' or '' AND clave='' or '' Tambien es menos probable que lo detecte un WAF/IDS. Título: Re: Problema al intentar inyeccion SQL Publicado por: 50l3r en 3 Noviembre 2009, 22:33 pm mirare haber si cuela, gracias ;)
Título: Re: Problema al intentar inyeccion SQL Publicado por: WHK en 3 Noviembre 2009, 22:37 pm Hola, prueba con un user válido porque si le das un user que no existe no le hará select a nada.
admin' and 1=1--+ o puedes obtener el primer id con x' or like usuario '%' limit 1 --+ con eso invalidas la primera comparación "=" y le inyectas un like y por orden mysql obtendrá el primer resultado de arriba hacia abajo ya que le indicamos un limit 1 para que no haya problemas al mostrar los datos en pantalla o si no te dirá error y terminas con un comentario para invalidar el resto de la query. Título: Re: Problema al intentar inyeccion SQL Publicado por: 50l3r en 4 Noviembre 2009, 22:48 pm whk, la sentencia que me devuelve es esta:
ERROR SQL: SELECT * FROM usuarios WHERE usuario='x' or like usuario '%' limit 1 --+' AND clave='sax'::SQL logic error or missing database lo testee con el sql inyect mee de security compas y dice que el formulario no contiene inyeccion sql mmm, de que otra forma se puede pasar un formulario sql si no es con inyeccion? madre mia tiene que ser facilisimo :( Título: Re: Problema al intentar inyeccion SQL Publicado por: AlbertoBSD en 5 Noviembre 2009, 05:22 am AND clave='sax' De donde sale este dato, tu lo injectastes o que onda Título: Re: Problema al intentar inyeccion SQL Publicado por: 50l3r en 5 Noviembre 2009, 11:20 am si, lo inyecte, por poner algo
Título: Re: Problema al intentar inyeccion SQL Publicado por: braulio-- en 5 Noviembre 2009, 14:01 pm Y que pasó con los primeros?
Título: Re: Problema al intentar inyeccion SQL Publicado por: 50l3r en 5 Noviembre 2009, 15:34 pm que primeros :/, las sentencias que coloque estan ahi en el anterior post
Título: Re: Problema al intentar inyeccion SQL Publicado por: braulio-- en 5 Noviembre 2009, 15:53 pm Las inyecciones que puso kasi ?
Título: Re: Problema al intentar inyeccion SQL Publicado por: 50l3r en 5 Noviembre 2009, 18:04 pm correcto :D era eso, tenia que escapar de las comillas, muchas gracias
|