[pyar] Peligrosidad de un lambda

Claudio Freire klaussfreire en gmail.com
Jue Oct 7 12:53:11 ART 2010


2010/10/7 Roberto Alsina <ralsina en netmanagers.com.ar>

> No. Si haces eval(raw_input()) en una aplicación que corre en una terminal
> (único lugar adonde tiene algún sentido) y después alguien agarra ese
> código y
> lo mete en un CGI es culpa del que lo metió wen el CGI, no del que lo
> escribió
> para correrlo en una terminal.
>

Todo bien Roberto... pero he aquí el problema.

La pregunta original, leela, estaba libre de contexto. Como los parsers.

Ante eso, tenés dos posturas (entre tantas):

1. La didáctica, tratá de cubrir todas las bases, incluyendo que en
muuuuchos contextos eval(raw_input()) no sólo es inseguro, es irresponsable.
Por más que exista (también muchos) contextos donde está bien.
2. Inventar un contexto donde está bien y asumir que la pregunta entraba en
ese contexto, y que todos los lectores de tu respuesta van a leerla en ese
contexto, y responder "si, todo bien".

Ok, extremé un poquín. Pero entendés la diferencia: didáctica. Una respuesta
llama la atención sobre un problema (que me desilusiona un poco que nuestro
amigo Aráoz acá desestime con tanta premura y convicción), la otra esconde
la cabeza asumiendo cosas que no estaban implícitas en la pregunta.

Todo lo contrario, en mi opinión, pues la pregunta misma implica cierta
preocupación por la seguridad y cierta desconfianza de las intenciones de
los usuarios. Si fuera un script para mí y sólo para mí, ni hubiera hecho la
pregunta. Como dijeron, somos responsables. La pregunta por el sólo hecho de
haber sido formulada transmite la noción de que el script no va a ser para
mí, y va a correr en un ambiente potencialmente hostil. O, al menos, quiere
evaluar el riesgo de ponerlo a correr en un ambiente hostil.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20101007/d4e194cb/attachment.html>


More information about the pyar mailing list