PostgreSQL is an advanced object-relational database management system(DBMS). PL/Perl and PL/Tcl allow users to write PostgreSQL functions in thePerl and Tcl languages. The PostgreSQL SECURITY DEFINER parameter, whichcan be used when creating a new PostgreSQL function, specifies that thefunction will be executed with the privileges of the user that created it.It was discovered that a user could utilize the features of the PL/Perl andPL/Tcl languages to modify the behavior of a SECURITY DEFINER functioncreated by a different user. If the PL/Perl or PL/Tcl language was used toimplement a SECURITY DEFINER function, an authenticated database user coulduse a PL/Perl or PL/Tcl script to modify the behavior of that functionduring subsequent calls in the same session. This would result in themodified or injected code also being executed with the privileges of theuser who created the SECURITY DEFINER function, possibly leading toprivilege escalation. (CVE-2010-3433)For Red Hat Enterprise Linux 4, the updated postgresql packages upgradePostgreSQL to version 7.4.30. Refer to the PostgreSQL Release Notes for alist of changes:http://www.postgresql.org/docs/7.4/static/release.htmlFor Red Hat Enterprise Linux 5, the updated postgresql packages upgradePostgreSQL to version 8.1.22, and the updated postgresql84 packages upgradePostgreSQL to version 8.4.5. Refer to the PostgreSQL Release Notes for alist of changes:http://www.postgresql.org/docs/8.1/static/release.htmlhttp://www.postgresql.org/docs/8.4/static/release.htmlAll PostgreSQL users are advised to upgrade to these updated packages,which correct this issue. If the postgresql service is running, it will beautomatically restarted after installing this update.