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