PostgreSQL 全球开发组今日发布了 PostgreSQL 对象关系数据库系统的所有活跃分支的安全更新,包括 9.0.1、8.4.5、8.3.12、8.2.18、8.1.22、8.0.26 和 7.4.30 版本。这是 PostgreSQL 7.4 和 8.0 版本的最后一次更新。
此次更新包含一个安全补丁,可防止通过修改“受信任”过程语言函数来未经授权地提升权限,并修复了若干关于正常运行时间、数据完整性和错误处理的小问题。
PL/perl 和 PL/tcl 过程语言以及 SECURITY DEFINER 的用户应立即更新其安装。强烈建议所有其他数据库管理员在下一次计划停机时更新您的 PostgreSQL 版本。
7.4.30 和 8.0.26 小版本是 PostgreSQL 7.4 和 8.0 的最终版本,因为这两个版本已不再受支持。PostgreSQL 社区也将在今年晚些时候停止发布 8.1 版本的更新。鼓励用户尽快升级到新版本。请参阅我们的发布支持策略
https://wiki.postgresql.ac.cn/wiki/PostgreSQL_Release_Support_Policy
此安全漏洞允许任何拥有“受信任”过程语言使用权的普通 SQL 用户在运行时修改过程语言函数的内容。根据 CVE-2010-3433 的详细说明,已认证的用户可以通过劫持 SECURITY DEFINER 函数(或其他现有的身份验证更改操作)来实现权限提升。仅仅存在过程语言并不会使您的数据库应用程序易受攻击。
此版本已对 PL/Perl 和 PL/tcl 进行修补;PL/PHP 的补丁正在准备中。所有具有受信任版本的第三方过程语言也易受此问题影响。公告 CVE-2010-3433:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3433
此版本包括大量的内部文档更新和 130 项错误修复,包括:
有关更改的完整详细列表,请参阅发布说明。
与其他小版本一样,用户无需转储和重新加载数据库即可应用此更新版本;您只需关闭 PostgreSQL 并更新其二进制文件。跳过一个以上更新的用户可能需要查看发布说明以了解额外的、更新后的步骤。
立即下载新版本
如果您想更详细地了解此漏洞,FAQ 现已提供。
本文已从先前版本的 PostgreSQL 网站迁移。对于迁移过程中可能出现的任何格式问题,我们深表歉意。