Details
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...
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.
Update instructions
In general, a standard system upgrade is sufficient to effect the necessary changes.
Learn more about how to get the fixes.The problem can be corrected by updating your system to the following package versions:
Ubuntu Release | Package Version | ||
---|---|---|---|
7.04 feisty | postgresql-8.2 – 8.2.4-0ubuntu0.7.04 | ||
6.10 edgy | postgresql-8.1 – 8.1.9-0ubuntu0.6.10 | ||
6.06 dapper | postgresql-8.1 – 8.1.9-0ubuntu0.6.06 |
Reduce your security exposure
Ubuntu Pro provides ten-year security coverage to 25,000+ packages in Main and Universe repositories, and it is free for up to five machines.