Synopsis: Moderate: postgresql security update Issue date: 2010-05-19 CVE Names: CVE-2009-4136 CVE-2010-0442 CVE-2010-0733 CVE-2010-1169 CVE-2010-1170 PostgreSQL is an advanced object-relational database management system (DBMS). PL/Perl and PL/Tcl allow users to write PostgreSQL functions in the Perl and Tcl languages, and are installed in trusted mode by default. In trusted mode, certain operations, such as operating system level access, are restricted. A flaw was found in the way PostgreSQL enforced permission checks on scripts written in PL/Perl. If the PL/Perl procedural language was registered on a particular database, an authenticated database user running a specially-crafted PL/Perl script could use this flaw to bypass intended PL/Perl trusted mode restrictions, allowing them to run arbitrary Perl scripts with the privileges of the database server. (CVE-2010-1169) A flaw was found in the way PostgreSQL enforced permission checks on scripts written in PL/Tcl. If the PL/Tcl procedural language was registered on a particular database, an authenticated database user running a specially-crafted PL/Tcl script could use this flaw to bypass intended PL/Tcl trusted mode restrictions, allowing them to run arbitrary Tcl scripts with the privileges of the database server. (CVE-2010-1170) A buffer overflow flaw was found in the way PostgreSQL retrieved a substring from the bit string for BIT() and BIT VARYING() SQL data types. An authenticated database user running a specially-crafted SQL query could use this flaw to cause a temporary denial of service (postgres daemon crash) or, potentially, execute arbitrary code with the privileges of the database server. (CVE-2010-0442) An integer overflow flaw was found in the way PostgreSQL used to calculate the size of the hash table for joined relations. An authenticated database user could create a specially-crafted SQL query which could cause a temporary denial of service (postgres daemon crash) or, potentially, execute arbitrary code with the privileges of the database server. (CVE-2010-0733) PostgreSQL improperly protected session-local state during the execution of an index function by a database superuser during the database maintenance operations. An authenticated database user could use this flaw to elevate their privileges via specially-crafted index functions. (CVE-2009-4136) If the postgresql service is running, it will be automatically restarted after installing this update. SL 3.0.x SRPMS: rh-postgresql-7.3.21-3.src.rpm i386: rh-postgresql-7.3.21-3.i386.rpm rh-postgresql-contrib-7.3.21-3.i386.rpm rh-postgresql-devel-7.3.21-3.i386.rpm rh-postgresql-docs-7.3.21-3.i386.rpm rh-postgresql-jdbc-7.3.21-3.i386.rpm rh-postgresql-libs-7.3.21-3.i386.rpm rh-postgresql-pl-7.3.21-3.i386.rpm rh-postgresql-python-7.3.21-3.i386.rpm rh-postgresql-server-7.3.21-3.i386.rpm rh-postgresql-tcl-7.3.21-3.i386.rpm rh-postgresql-test-7.3.21-3.i386.rpm x86_64: rh-postgresql-7.3.21-3.x86_64.rpm rh-postgresql-contrib-7.3.21-3.x86_64.rpm rh-postgresql-devel-7.3.21-3.x86_64.rpm rh-postgresql-docs-7.3.21-3.x86_64.rpm rh-postgresql-jdbc-7.3.21-3.x86_64.rpm rh-postgresql-libs-7.3.21-3.i386.rpm rh-postgresql-libs-7.3.21-3.x86_64.rpm rh-postgresql-pl-7.3.21-3.x86_64.rpm rh-postgresql-python-7.3.21-3.x86_64.rpm rh-postgresql-server-7.3.21-3.x86_64.rpm rh-postgresql-tcl-7.3.21-3.x86_64.rpm rh-postgresql-test-7.3.21-3.x86_64.rpm SL 4.x SRPMS: postgresql-7.4.29-1.el4_8.1.src.rpm i386: postgresql-7.4.29-1.el4_8.1.i386.rpm postgresql-contrib-7.4.29-1.el4_8.1.i386.rpm postgresql-devel-7.4.29-1.el4_8.1.i386.rpm postgresql-docs-7.4.29-1.el4_8.1.i386.rpm postgresql-jdbc-7.4.29-1.el4_8.1.i386.rpm postgresql-libs-7.4.29-1.el4_8.1.i386.rpm postgresql-pl-7.4.29-1.el4_8.1.i386.rpm postgresql-python-7.4.29-1.el4_8.1.i386.rpm postgresql-server-7.4.29-1.el4_8.1.i386.rpm postgresql-tcl-7.4.29-1.el4_8.1.i386.rpm postgresql-test-7.4.29-1.el4_8.1.i386.rpm x86_64: postgresql-7.4.29-1.el4_8.1.x86_64.rpm postgresql-contrib-7.4.29-1.el4_8.1.x86_64.rpm postgresql-devel-7.4.29-1.el4_8.1.x86_64.rpm postgresql-docs-7.4.29-1.el4_8.1.x86_64.rpm postgresql-jdbc-7.4.29-1.el4_8.1.x86_64.rpm postgresql-libs-7.4.29-1.el4_8.1.i386.rpm postgresql-libs-7.4.29-1.el4_8.1.x86_64.rpm postgresql-pl-7.4.29-1.el4_8.1.x86_64.rpm postgresql-python-7.4.29-1.el4_8.1.x86_64.rpm postgresql-server-7.4.29-1.el4_8.1.x86_64.rpm postgresql-tcl-7.4.29-1.el4_8.1.x86_64.rpm postgresql-test-7.4.29-1.el4_8.1.x86_64.rpm SL 5.x SRPMS: postgresql-8.1.21-1.el5_5.1.src.rpm i386: postgresql-8.1.21-1.el5_5.1.i386.rpm postgresql-contrib-8.1.21-1.el5_5.1.i386.rpm postgresql-devel-8.1.21-1.el5_5.1.i386.rpm postgresql-docs-8.1.21-1.el5_5.1.i386.rpm postgresql-libs-8.1.21-1.el5_5.1.i386.rpm postgresql-pl-8.1.21-1.el5_5.1.i386.rpm postgresql-python-8.1.21-1.el5_5.1.i386.rpm postgresql-server-8.1.21-1.el5_5.1.i386.rpm postgresql-tcl-8.1.21-1.el5_5.1.i386.rpm postgresql-test-8.1.21-1.el5_5.1.i386.rpm x86_64: postgresql-8.1.21-1.el5_5.1.x86_64.rpm postgresql-contrib-8.1.21-1.el5_5.1.x86_64.rpm postgresql-devel-8.1.21-1.el5_5.1.i386.rpm postgresql-devel-8.1.21-1.el5_5.1.x86_64.rpm postgresql-docs-8.1.21-1.el5_5.1.x86_64.rpm postgresql-libs-8.1.21-1.el5_5.1.i386.rpm postgresql-libs-8.1.21-1.el5_5.1.x86_64.rpm postgresql-pl-8.1.21-1.el5_5.1.x86_64.rpm postgresql-python-8.1.21-1.el5_5.1.x86_64.rpm postgresql-server-8.1.21-1.el5_5.1.x86_64.rpm postgresql-tcl-8.1.21-1.el5_5.1.x86_64.rpm postgresql-test-8.1.21-1.el5_5.1.x86_64.rpm -Connie Sieh -Troy Dawson