Evitar sql injection y xss

Rodrigo Fuentealba darkprox en gmail.com
Vie Sep 21 15:10:17 CLT 2007


El 21/09/07, Claudio Salazar <csalazar en alumnos.inf.utfsm.cl> escribió:
> Cristian Rodriguez 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.
> >
> Lo decia una linea despues.

Si guardas basura, basura tendrás para mostrar. Es importante validar
y luego formatear.

> Feo output, de todas manera unas palabras mas adelante no les daba mi
> aprobacion. Lo mencione porque he visto que tambien tratan asi de evitar
> XSS.

Si guardas basura...

> Ahora no basta con preocuparse solo de XSS e inyecciones SQL, funciones
> como mail() ya estan siendo foco de inyecciones y asi cada dia nuevas, y
> no discutiremos que es necesario que un programador debe partir por la
> seguridad de su codigo, pero una ayudita no le hace mal a nadie.

Si un programador decide preocuparse "per sé" del tratamiento de datos
pre/post guardado, dos cosas:

1.- O tiene "demasiado tiempo" para invertir en reinventar la rueda.
2.- O está "demasiado loco" para cranear todas las posibilidades.

Hay proyectos que evitan todas esas cosas, como Propel/Creole y ADOdb
del lado del modelo, Smarty o (el que me gusta más) PHPTAL en el lado
de las vistas.

Y si por último quieres algo completo porque tu aplicación es
compleja, get a framework which suits your needs!!! Pero mod_security
o CoreGrasp "no" son buenas medidas de seguridad, debido a que el
programador tiende a relajar sus hábitos de desarrollo y la aplicación
no siempre (más bien, casi nunca) llega a un servidor en el que están
instalados estos dos productitos.

-- 
Rodrigo Fuentealba Cartes
Desarrollador de Sistemas - Consultor UNIX - Database Administrator



Más información sobre la lista de distribución Linux