Submitted by KeesCook on Fri, 2007-04-27 13:28
Referenced CVEs:
CVE-2007-2138
Description:
===========================================================
Ubuntu Security Notice USN-454-1 April 26, 2007
postgresql-8.1, postgresql-8.2 vulnerability
CVE-2007-2138
===========================================================
A security issue affects the following Ubuntu releases:
Ubuntu 6.06 LTS
Ubuntu 6.10
Ubuntu 7.04
This advisory also applies to the corresponding versions of
Kubuntu, Edubuntu, and Xubuntu.
The problem can be corrected by upgrading your system to the
following package versions:
Ubuntu 6.06 LTS:
postgresql-8.1 8.1.9-0ubuntu0.6.06
Ubuntu 6.10:
postgresql-8.1 8.1.9-0ubuntu0.6.10
Ubuntu 7.04:
postgresql-8.2 8.2.4-0ubuntu0.7.04
In general, a standard system upgrade is sufficient to effect the
necessary changes.
Details follow:
PostgreSQL did not handle the "search_path" configuration option in a
secure way for functions declared as "SECURITY DEFINER".
Previously, an attacker could override functions and operators used by
the security definer function to execute arbitrary SQL commands with
the privileges of the user who created the security definer function.
The updated version does not search the temporary table schema for
functions and operators any more.
Similarly, an attacker could put forged tables into the temporary
table schema to trick the security definer function into using
attacker defined data for processing. This was possible because the
temporary schema was always implicitly searched first before all other
entries in "search_path". The updated version now supports explicit
placement of the temporary schema. Please see the HTML documentation
or the manual page for "CREATE FUNCTION" for details and an example
how to write security definer functions in a secure way.


