2010/11/23 Ricardo Cárdenes Medina <[email protected]>
>
>
> La idea es evitar cosas como los ataques de inyección SQL.
>

Nota: y no solo ataques. Imagina esto:

  >>> sql = "UPDATE usuarios SET nombre='%s' WHERE id = %d"
  >>> sql % ("O'neill", 15)
  "UPDATE usuarios SET nombre='O'neill' WHERE id = 15"

Como verás, hay un error de sintaxis. Y aquí ni siquiera tenemos a un
atacante, sino una entrada de datos válida.

En general el problema es al trabajar con cadenas de texto, por ejemplo, que
tienen que ir delimitadas (no es un problema con números), pero es mejor
acostumbrarse a no usar % para estas cosas en ningún caso y así evitamos
tentaciones y problemas.
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a