Ubuntu 8.04 LTS / 8.10 : pygresql vulnerability (USN-870-1)

Ubuntu Security Notice (C) 2009-2013 Canonical, Inc. / NASL script (C) 2009-2013 Tenable Network Security, Inc.


Synopsis :

The remote Ubuntu host is missing one or more security-related patches.

Description :

Steffen Joeris discovered that PyGreSQL 3.8 did not use PostgreSQL's
safe string and bytea functions in its own escaping functions. As a
result, applications written to use PyGreSQL's escaping functions are
vulnerable to SQL injections when processing certain multi-byte
character sequences. Because the safe functions require a database
connection, to maintain backwards compatibility, pg.escape_string()
and pg.escape_bytea() are still available, but applications will have
to be adjusted to use the new pyobj.escape_string() and
pyobj.escape_bytea() functions. For example, code containing :

import pg connection = pg.connect(...) escaped =
pg.escape_string(untrusted_input)

should be adjusted to use :

import pg connection = pg.connect(...) escaped =
connection.escape_string(untrusted_input).

Solution :

Update the affected python-pygresql and / or python-pygresql-dbg
packages.

Risk factor :

High / CVSS Base Score : 7.5
(CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P)

Family: Ubuntu Local Security Checks

Nessus Plugin ID: 43108 ()

Bugtraq ID:

CVE ID: CVE-2009-2940