Evitar sql injection y xss

Alvaro Herrera alvherre en alvh.no-ip.org
Jue Sep 27 13:54:59 CLT 2007


Ricardo Mun~oz A. escribió:
> Alvaro Herrera wrote:

> Alvaro,
> te refieres al codigo SQL, PL/pgSQL, etc.? es decir, potencialmente una 
> funcion PL/pgSQL hecha en Postgres 7.x podria ya no funcionar en Postgres 
> 8.x?

Correcto -- si fuera por problemas de seguridad.  Por ej. hace no mucho
hubo un cambio en la API de dblink, y anteriormente hubo unos cambios en
las API de escapeParams por problemas con codificaciones particulares
(por ej. no es lo mismo escapar las comillas en UTF-8 que en SJIS).

En 8.3 va a haber otro cambio que tiene que ver con search_path en
funciones "security definer".  Creo que eso es lo mas cercano que veras
en PL/pgSQL, porque este lenguaje es bastante limitado, precisamente
para evitar tener problemas de seguridad.

(Ah, un tiempo atras se elimino el lenguaje PL/Python debido a que no
representaba realmente un ambiente seguro; y dejo solamente PL/PythonU.
Eso tambien es un quiebre en la compatibilidad hacia atras en aras de la
seguridad).

-- 
Alvaro Herrera                 http://www.amazon.com/gp/registry/CTMLCN8V17R4
"I dream about dreams about dreams", sang the nightingale
under the pale moon (Sandman)


Más información sobre la lista de distribución Linux