Australia's Leading Computer Emergency Response Team

ESB-2009.1683 - [Solaris][OpenSolaris] PostgreSQL: Multiple vulnerabilities
Date: 29 December 2009
Original URL: http://www.auscert.org.au/render.html?cid=1980&it=12173
References: ASB-2009.1158  ESB-2010.0001  

Click here for PGP verifiable version
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

===========================================================================
             AUSCERT External Security Bulletin Redistribution

                               ESB-2009.1683
   Security Vulnerabilities in PostgreSQL Shipped With Solaris May Allow
     Escalation of Privileges or Man-in-the-Middle on SSL Connections
                             29 December 2009

===========================================================================

        AusCERT Security Bulletin Summary
        ---------------------------------

Product:           PostgreSQL
Publisher:         Sun Microsystems
Operating System:  Solaris
                   OpenSolaris
Impact/Access:     Increased Privileges           -- Existing Account            
                   Provide Misleading Information -- Remote with User Interaction
Resolution:        Patch/Upgrade
CVE Names:         CVE-2009-4136 CVE-2009-4034 

Reference:         ASB-2009.1158

Original Bulletin: 
   http://sunsolve.sun.com/search/printfriendly.do?assetkey=1-66-274870-1

- --------------------------BEGIN INCLUDED TEXT--------------------

Article ID : 274870
Article Type : Sun Alert
Last reviewed : 2009-12-24
Audience : PUBLIC
Keywords :

Copyright Notice: Copyright © 2009 Sun Microsystems, Inc. All Rights
Reserved

Security Vulnerabilities in PostgreSQL Shipped With Solaris May Allow
Escalation of Privileges or Man-in-the-Middle on SSL Connections
  _________________________________________________________________

Category : Security
Release Phase : Workaround
Bug Id : 6909139, 6909140, 6909142
Product : Solaris 10 Operating System
OpenSolaris
Date of Workaround Release : 24-Dec-2009

Security Vulnerabilities in PostgreSQL Shipped With Solaris May Allow 
Escalation of Privileges or Man-in-the-Middle on SSL Connections


1. Impact
Multiple security vulnerabilities have been identified in the
PostgreSQL software shipped with Solaris. These vulnerabilities may
allow a remote authenticated user with certain privileges to gain
extra privileges via a table with a crafted index function. Further
vulnerabilities may allow man-in-the-middle attacks on SSL based
PostgreSQL servers by substituting malicious SSL certificates for
trusted ones.
These issues are described in the following documents:

Official PostgreSQL annoucement at
http://www.postgresql.org/about/news.1170

CVE-2009-4034 at
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-4034
CVE-2009-4136 at
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-4136


2. Contributing Factors
These issues can occur in the following releases:
SPARC Platform
  * Solaris 10 6/06 (or later) PostgreSQL 8.1
  * Solaris 10 8/07 (or later) PostgreSQL 8.2
  * Solaris 10 10/08 (or later) PostgreSQL 8.3
  * OpenSolaris PostgreSQL 8.1 based upon builds snv_35 through
    snv_109
  * OpenSolaris PostgreSQL 8.2 based upon builds snv_56 through
    snv_130
  * OpenSolaris PostgreSQL 8.3 based upon builds snv_87 through
    snv_130

x86 Platform
  * Solaris 10 6/06 (or later) PostgreSQL 8.1
  * Solaris 10 8/07 (or later) PostgreSQL 8.2
  * Solaris 10 10/08 (or later) PostgreSQL 8.3
  * OpenSolaris PostgreSQL 8.1 based upon builds snv_35 through
    snv_109
  * OpenSolaris PostgreSQL 8.2 based upon builds snv_56 through
    snv_130
  * OpenSolaris PostgreSQL 8.3 based upon builds snv_87 through
    snv_130

Notes:

1. Solaris 8 and 9 do not ship with PostgreSQL and are not impacted by
these issues.

2. A user must have an account on the PostgreSQL server to exploit the
issue described in CVE-2009-4136.

3. The CVE-2009-4034 and CVE-2009-4136 issues affect PostgreSQL 7.4.x
prior to 7.4.27, 8.0.x prior to 8.0.23, 8.1.x prior to 8.1.19, 8.2.x
prior to 8.2.15 and 8.3.x prior to 8.3.9 and versions 8.4.x prior to
8.4.2.

4. PostgreSQL 8.1 (SUNWpostgr), 8.2 (packages beginning with
SUNWpostgr-82) and 8.3 (packages beginning with SUNWpostgr-83)  can be
installed at the same time and are separately impacted by these
vulnerabilities.
To determine if a version of PostgreSQL is installed, a command such
as the following can be used:
$ pkginfo | grep SUNWpostgr
system      SUNWpostgr             PostgreSQL 8.1.9 client programs and 
libraries
system      SUNWpostgr-82-client   PostgreSQL 8.2 client tools

To determine if PostgreSQL is running on a server, a command such as
the following can be run as the user 'postgres' (or the 'root' user):
for PostgreSQL 8.1:
$ pg_ctl status -D /var/lib/pgsql/data/
pg_ctl: neither postmaster nor postgres running

for PostgreSQL 8.2:
$ /usr/postgres/8.2/bin/pg_ctl status -D /var/postgres/8.2/data/
pg_ctl: server is running (PID: 395)

for PostgreSQL 8.3:
$ /usr/postgres/8.3/bin/pg_ctl status -D /var/postgres/8.3/data/
pg_ctl: server is running (PID: 395)

or (where applicable):
$ svcs -a | grep postgresql
disabled       17:12:37 svc:/application/database/postgresql_83:default_32bit
disabled       17:12:37 svc:/application/database/postgresql:version_82
disabled       17:12:37 svc:/application/database/postgresql:version_82_64bit
online         17:13:05 svc:/application/database/postgresql_83:default_64bit


3. Symptoms
There are no predictable symptoms that would indicate the described
issues have been exploited.

4. Workaround
To prevent the issue described in CVE-2009-4136 from being freshly
exploited, the database administrator can revoke the "create"
privilege from users by running the following commands:

REVOKE CREATE ON SCHEMA <schema> FROM <user>;

or

REVOKE CREATE ON TABLESPACE <tablespace> FROM <user>;

Preliminary T-Patches are available for the following releases from
http://sunsolve.sun.com/tpatches:
SPARC Platform
  * Solaris 10 6/06 (or later) PostgreSQL 8.1 T-patch T123590-12
  * Solaris 10 8/07 (or later) PostgreSQL 8.2 T-patch T136998-08
  * Solaris 10 10/08 (or later) PostgreSQL 8.3 T-patch T138826-06

x86 Platform
  * Solaris 10 6/06 (or later) PostgreSQL 8.1 T-patch T123591-12
  * Solaris 10 8/07 (or later) PostgreSQL 8.2 T-patch T136999-08
  * Solaris 10 10/08 (or later) PostgreSQL 8.3 T-patch T138827-06

This document refers to one or more preliminary temporary patches
(T-Patches) which are designed to address the concerns identified
herein. Sun has limited experience with these patches due to their
preliminary nature. As such, you should only install the patches on
systems meeting the configurations described above. Sun may release
full patches at a later date, however, Sun is under no obligation
whatsoever to create, release, or distribute any such patch.

5. Resolution
These issues are addressed in the following releases:
SPARC Platform
  * OpenSolaris PostgreSQL 8.1 based upon builds snv_110 or later
  * OpenSolaris PostgreSQL 8.2 based upon builds snv_131 or later
  * OpenSolaris PostgreSQL 8.3 based upon builds snv_131 or later

x86 Platform
  * OpenSolaris PostgreSQL 8.1 based upon builds snv_110 or later
  * OpenSolaris PostgreSQL 8.2 based upon builds snv_131 or later
  * OpenSolaris PostgreSQL 8.3 based upon builds snv_131 or later

Note PostgreSQL 8.1 was removed from OpenSolaris snv_110 onwards.
A final resolution is pending completion for Solaris 10.
For more information on Security Sun Alerts, see Technical
Instruction ID 213557.

This Sun Alert notification is being provided to you on an "AS IS"
basis. This Sun Alert notification may contain information provided by
third parties. The issues described in this Sun Alert notification may
or may not impact your system(s). Sun makes no representations,
warranties, or guarantees as to the information contained herein. ANY
AND ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR
NON-INFRINGEMENT, ARE HEREBY DISCLAIMED. BY ACCESSING THIS DOCUMENT
YOU ACKNOWLEDGE THAT SUN SHALL IN NO EVENT BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, PUNITIVE, OR CONSEQUENTIAL DAMAGES THAT ARISE
OUT OF YOUR USE OR FAILURE TO USE THE INFORMATION CONTAINED HEREIN.
This Sun Alert notification contains Sun proprietary and confidential
information. It is being provided to you pursuant to the provisions of
your agreement to purchase services from Sun, or, if you do not have
such an agreement, the Sun.com Terms of Use. This Sun Alert
notification may only be used for the purposes contemplated by these
agreements.

Copyright 2000-2009 Sun Microsystems, Inc., 4150 Network Circle, Santa
Clara, CA 95054 U.S.A. All rights reserved

- --------------------------END INCLUDED TEXT--------------------

You have received this e-mail bulletin as a result of your organisation's
registration with AusCERT. The mailing list you are subscribed to is
maintained within your organisation, so if you do not wish to continue
receiving these bulletins you should contact your local IT manager. If
you do not know who that is, please send an email to auscert@auscert.org.au
and we will forward your request to the appropriate person.

NOTE: Third Party Rights
This security bulletin is provided as a service to AusCERT's members.  As
AusCERT did not write the document quoted above, AusCERT has had no control
over its content. The decision to follow or act on information or advice
contained in this security bulletin is the responsibility of each user or
organisation, and should be considered in accordance with your organisation's
site policies and procedures. AusCERT takes no responsibility for consequences
which may arise from following or acting on information or advice contained in
this security bulletin.

NOTE: This is only the original release of the security bulletin.  It may
not be updated when updates to the original are made.  If downloading at
a later date, it is recommended that the bulletin is retrieved directly
from the author's website to ensure that the information is still current.

Contact information for the authors of the original document is included
in the Security Bulletin above.  If you have any questions or need further
information, please contact them directly.

Previous advisories and external security bulletins can be retrieved from:

        http://www.auscert.org.au/render.html?cid=1980

If you believe that your computer system has been compromised or attacked in 
any way, we encourage you to let us know by completing the secure National IT 
Incident Reporting Form at:

        http://www.auscert.org.au/render.html?it=3192

===========================================================================
Australian Computer Emergency Response Team
The University of Queensland
Brisbane
Qld 4072

Internet Email: auscert@auscert.org.au
Facsimile:      (07) 3365 7031
Telephone:      (07) 3365 4417 (International: +61 7 3365 4417)
                AusCERT personnel answer during Queensland business hours
                which are GMT+10:00 (AEST).
                On call after hours for member emergencies only.
===========================================================================
-----BEGIN PGP SIGNATURE-----
Comment: http://www.auscert.org.au/render.html?it=1967

iD8DBQFLOXjhNVH5XJJInbgRAmflAJ0bR4eJtR42J/A8/MJz6bI/r5kiaQCfW79O
iULUifj+k9RAVuVz8BcU+II=
=TRj3
-----END PGP SIGNATURE-----