Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: encurto en 22 Noviembre 2008, 15:04 pm



Título: Como probar MySQL injection
Publicado por: encurto en 22 Noviembre 2008, 15:04 pm
Buenas, estoy haciendo un trabajo sobre MySQL injection y para ello he hecho un simple ejemplo que consta de un formulario que tiene un input text donde introducimos un nombre de usuario. Cuando le doy al boton llamo a un php que ejecuta una consulta mysql

Código:
"SELECT * FROM Usuarios WHERE login = '{$_POST['login']}'"

Ahora lo que quiero hacer es demostrar el tipico ejemplo de que si en el input text escribo el siguiente login  algo' OR '1'='1 voy a poder loguearme siempre.
 Mi problema es que al imprimir $_POST['login'] me devuelve esto: algo\' OR \'1\'=\'1 por lo que la inyeccion sql no me funciona.

¿Sabeis como puedo evitar que php me incruste el caracter \' ?

Gracias!


Título: Re: Como probar MySQL injection
Publicado por: :ohk<any> en 22 Noviembre 2008, 15:59 pm
Pues eso te sale porque estas usando la función addslashes

Busca donde utilizas la función y anulalo o comentalo y ya.


Título: Re: Como probar MySQL injection
Publicado por: luiggy2 en 23 Noviembre 2008, 15:45 pm
También pueden ser qué tenga activadas las comillas mágicas en php.ini


Saludos!