OT Inyección en sentencias SQL

Antoni Aloy subscripcions en trespams.com
Dom Jun 7 00:48:29 CEST 2009


On Saturday 06 June 2009 11:42:42 Dr. Bobus wrote:
> Hola todos:
>
> He leido cienes de veces sobre lo inseguro de emplear sustituciones de
> cadenas en las sentencias SQL
>
> Esto es inseguro:
>
> cosa = 'pp'
> c.execute("select * from pipo where algo= '%s'" % cosa)
>
>
>
> Esto no es inseguro
>
> h = ('pp',)
> c.execute('select * from pipo where algo=?', h)
>
>
> Me he limitado a seguir obedientemente las recomendaciones de mis mayores
> pero nunca he entendido porqué una cosa es insegura y la otra no y mucho
> menos cómo alguien puede inyectar nada dentro de un código. He leído varios
> ejemplos sobre inyectar código pero no me queda muy claro si para ello es
> necesario tener acceso directo al código o estamos hablando de introducir
> código a través de un form en html.
>
> Alguien nos puede ilustar sobre este tema?
>

http://xkcd.com/327/

No hay nada como el humor para ilustrar un tema tan serio.

-- 
Antoni Aloy López
Blog: http://trespams.com
Web: http://apsl.net

------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes


Más información sobre la lista de distribución Python-es