Evitar sql injection y xss
Rodrigo Fuentealba
darkprox en gmail.com
Jue Sep 20 22:22:00 CLT 2007
El 20/09/07, Cristian Rodriguez <crrodriguez en suse.de> escribió:
> Claudio Salazar escribió:
>
> > Lo importante para prevenir XSS es la validacion de los datos,
>
> No, no su validacion si no que la forma en la cual son mostrados en
> pantalla.
Desde el punto de vista del manejo de datos, claro que es bueno
prevenir XSS a través de los datos que "ingresan" y no que "egresan"
de la base de datos: nombres de personas con <>#? no existen, pero sí
con ' y probablemente con . y , así que debemos validar que esos
carácteres sean ingresados en los nombres de personas y nada más que
ello ("ingrese un nombre válido!")
> >si bien se pueden crear
> > funciones con expresiones regulares para detectar patrones,
>
> No, solo preocupate de **mostrarlas** con las caracteres potencialmente
> dañinos.
Feo resultado, al fin y al cabo.
> > Para prevenir XSS puedes ocupar funciones como htmlspecialchars(),
> > addslashes() que combinadas dan buenos resultados.
>
> que combinadas dejan la escoba ...
Yup...
> > Por que no te funciona mysql_real_escape_string() ?
> > Solo sirve para "sanitizar" los datos que se ingresan en las consultas,
> > antes de aplicar mysql_query().
> > Mas info en
> > http://www.php.net/manual/es/function.mysql-real-escape-string.php .
>
>
> huh ? mysql_real_escape_string() no es para prevenir XSS..
Es para prevenir SQL Injections, e insisto, prefiero usar
Propel/Creole que emulen la tarea de pasar parámetros a la base por mí
en vez de usar el (BTW malísimo) driver de MySQL. (Sí, se viene algo
llamado MySQL-NG o algo parecido, pero sigue siendo MySQL).
> > Tambien podrias ver otras aplicaciones como ModSecurity o Core Grasp que
> > añaden seguridad a aplicaciones web.
>
> Peligrosa tu recomendacion.
Argh, mod_security es sólo un intento por tapar la ineficiencia del programador.
> Cristian Rodríguez R.
> SUSE LINUX Products GmbH
> Research & Development
uy, ella, el tarro con más duraznos... quien te viera en los antros de
perdición donde andábamos juntos y ahora... :-P ahahaha, broma
estimado.
--
Rodrigo Fuentealba
Más información sobre la lista de distribución Linux