Evitar sql injection y xss
Horst H. von Brand
vonbrand en inf.utfsm.cl
Vie Sep 21 22:50:24 CLT 2007
Rodrigo Fuentealba <darkprox en gmail.com> wrote:
> El 21/09/07, Alvaro Herrera <alvherre en alvh.no-ip.org> escribi贸:
> > Claudio Salazar escribi贸:
> > > Cristian Rodriguez escribi贸:
> >
> > >> No, solo preocupate de **mostrarlas** con las caracteres potencialmente
> > >> da帽inos.
> >
> > Cristian tiene razon. Para evitar el XSS, lo que hay que hacer es
> > evitar que el navegador interprete el tag como si fuera HTML. Para
> > esto, lo mas facil es escapar los caracteres peligrosos (creo que con
> > escapar el < deberia ser suficiente pero no estoy seguro).
>
> Si te pones a pensar en todas las posibilidades, no es suficiente.
Revisa <http://www.dwheeler.com/secure-programs> para una larga lista de
sugerencias...
> Ponte a pensar en un trozo de c贸digo que quieres postear (pensando en
> un blog, naturalmente; o en una aplicaci贸n de educaci贸n a distancia,
> como una que estoy haciendo ahora).
Si revisas las cosas que los blogs aguantan como tags en sus comentarios,
suelen ser /muy/ limitados.
Y a que te refieres con "aplicacion de educacion a distancia"? De esas
cosas ya hay miles como codigo abierto... elige una, y ya.
[Por lo demas, estamos en la fase de "entusiasmo debordado, implementemos!"
del ciclo de 5 an~os de esas cosas... en cosa de un an~o se daran cuenta
(nuevamente) que no es /tan/ facil, luego pasan dos an~os para que a todos
se les olvide el descalabro, y copmenzamos nuevamente por lo de "no seria
buena idea"...]
[...]
> Llevar un tracking de aquellos elementos que en un nombre de pila no
> ser铆an permitidos pero en el campo "contenido" de un blog s铆 lo son,
Bienvenido al mundo de "se requiere validar los datos"...
> en tablas separadas horribiliza el modelo, hace m谩s compleja la
> programaci贸n y al final se me ocurren dos soluciones:
>
> 1.- Guardar el contenido del fckeditor o el tiny_mce, tal como se
> genera, en la base.
> 2.- Generar una suerte de metalenguaje que me permita insertar
> im谩genes y links sin usar tags html, como {% img="imagen.jpg" style=""
> %} o {% link="http://www.google.cl" text="Google" %} (algo como el
> funcionamiento de los BBCodes)
No.
Revisa como lo hacen los paquetes para blogs (<http://www.geeklog.net> hace
funcionar <http://www.groklaw.net>). La gente de <http://lwn.net> tiene
algo tejido en casa, que les tomo /an~os/ perfeccionar, y que no publican
porque les da verguenza lo sucio del codigo...
--
Dr. Horst H. von Brand User #22616 counter.li.org
Departamento de Informatica Fono: +56 32 2654431
Universidad Tecnica Federico Santa Maria +56 32 2654239
Casilla 110-V, Valparaiso, Chile Fax: +56 32 2797513
M醩 informaci髇 sobre la lista de distribuci髇 Linux