Título: inyeccion SQL y como evitarla.... Publicado por: nobo en 16 Febrero 2012, 22:42 pm Como puedo saber si mi pagina tiene inyeccion SQL y como puedo hacer para evitarlo??
Es decir como puedo dar algo mas de seguridad a mi web y ponerlo algo mas dificil? Gracias a todos. Título: Re: inyeccion SQL y como evitarla.... Publicado por: #!drvy en 16 Febrero 2012, 23:16 pm Bueno, si no filtras los datos que recibes en las consultas
Por ejemplo: Código O lo filtras de manera cutre Ejemplo: Código Seguramente tendrás un sqli. Para evitarlo puedes hacer uso de funciones como Código Y otras cosas como por ejemplo, si sabes que vas a recibir una variable numerica (entero), usar (int) que convierte cualquier carácter a entero. Ejemplo: Código
Saludos Título: Re: inyeccion SQL y como evitarla.... Publicado por: nobo en 17 Febrero 2012, 00:01 am Y... Claro... xDDD Tengo que revisarme toooooooooooooooooodo el codigo.... xD
pfffffffffffff.... Título: Re: inyeccion SQL y como evitarla.... Publicado por: EFEX en 17 Febrero 2012, 14:08 pm Y... Claro... xDDD Tengo que revisarme toooooooooooooooooodo el codigo.... xD pfffffffffffff.... O haces eso o cada mes al sitio te lo tumban abajo por algún grupo de arabia saudita. Título: Re: inyeccion SQL y como evitarla.... Publicado por: s00rk en 17 Febrero 2012, 22:34 pm O haces eso o cada mes al sitio te lo tumban abajo por algún grupo de arabia saudita. Tambien podria crear otro archivo llamado nose anti.php, algo asi: Código
Y ya si su pagina principal incluye a las otras como modulos o asi puede poner en su pagina principal un include_once("anti.php"); y ya, sino agregar eso a cada pagina y ya con eso podria funcionar n_n (creo hehehe) Título: Re: inyeccion SQL y como evitarla.... Publicado por: nobo en 19 Febrero 2012, 11:07 am No es mala idea ^^ Me gusta esa propuesta :D
Tambien podria pasar el codigo por aqui xD Y tanto se aburren los de arabia? Título: Re: inyeccion SQL y como evitarla.... Publicado por: K1ll1ng M4ch1n3 en 19 Febrero 2012, 12:54 pm Una vez que hayas escapado las variables para evitar las inyecciones, puedes usar SqlMap (http://sqlmap.sourceforge.net/) para verificar que la página ya no es vulnerable.
Tienes un tutorial básico en http://amperis.blogspot.com/2008/11/rulando-sqlmap.html Saludos. Título: Re: inyeccion SQL y como evitarla.... Publicado por: nobo en 20 Febrero 2012, 00:47 am Perfecto eso queria... Saber si habia algun scaner "fiable" ;)
Muchas gracias !! :D EDITO: Me da esto: [01:03:42] [WARNING] User-Agent parameter 'User-Agent' is not dynamic [01:03:43] [WARNING] Cookie parameter 'PHPSESSID' is not dynamic [01:03:47] [WARNING] GET parameter 'cat' is not injectable with 0 parenthesis [01:03:49] [WARNING] GET parameter 'cat' is not injectable with 1 parenthesis [01:03:53] [WARNING] GET parameter 'cat' is not injectable with 2 parenthesis [01:03:55] [WARNING] GET parameter 'cat' is not injectable with 3 parenthesis
Título: Re: inyeccion SQL y como evitarla.... Publicado por: Zomtrixbiesroot en 22 Febrero 2012, 02:51 am Amig@s perdón que me meta en el tema pero estoy metiéndome en la POO y de paso en la seguridad en php :D
entonces leyendo el tema me intereso saber que hace mysql_real_escape. yo tengo esta consulta: $sql = "select * from noticias where id_noticia=".mysql_real_escape_string($_GET['id']); Ahi que estaria evitando? Cuando es recomendable usar dicha función y que hace? Título: Re: inyeccion SQL y como evitarla.... Publicado por: nobo en 22 Febrero 2012, 09:44 am Para filtrar los datos que se reciben.
O eso creo Título: Re: inyeccion SQL y como evitarla.... Publicado por: Zomtrixbiesroot en 22 Febrero 2012, 12:01 pm Pero esta bien usada como muestra mi ejemplo o cuando es recomendable usarla?
Código
Acá por ejemplo en una conexión? Abrazo Título: Re: inyeccion SQL y como evitarla.... Publicado por: Tyrz en 22 Febrero 2012, 13:16 pm si pasas el enlace de tu web no me importaría echar un vistazo a ver que encuentro
Título: Re: inyeccion SQL y como evitarla.... Publicado por: nobo en 22 Febrero 2012, 13:39 pm ok! De momento esta qui:
www.elzulo.site90.net No esta con ningun script para filtrar ni nada ;) Prueba a ver y me dices ^^ Título: Re: inyeccion SQL y como evitarla.... Publicado por: #!drvy en 22 Febrero 2012, 14:42 pm Amig@s perdón que me meta en el tema pero estoy metiéndome en la POO y de paso en la seguridad en php :D entonces leyendo el tema me intereso saber que hace mysql_real_escape. yo tengo esta consulta: $sql = "select * from noticias where id_noticia=".mysql_real_escape_string($_GET['id']); Ahi que estaria evitando? Cuando es recomendable usar dicha función y que hace? Citar Escapa caracteres especiales en la cadena no escapada, teniendo en cuenta el conjunto de caracteres actual de la conexión para que sea seguro usarla en mysql_query(). Si se van a insertar datos binarios, esta función debe ser usada. http://php.net/manual/es/function.mysql-real-escape-string.phpmysql_real_escape_string() llama la función de la libreria de MySQL mysql_real_escape_string, la cual antepone backslashes a los siguientes caracteres: \x00, \n, \r, \, ', " y \x1a. Esta función siempre debe (con pocas excepciones) ser usada para hacer los datos seguros, antes de enviar una consulta a MySQL. Si es un id (numero), Puedes usar la función (int) que convierte cualquier cosa a entero. Saludos |