PostgreSQL 全球开发组 (PGDG) 认真对待安全问题。这使得我们的用户可以信赖 PostgreSQL 来保护他们关键任务的数据。
PostgreSQL 全球开发组遵循一种模型,该模型在 PostgreSQL 本身及其部署环境(包括硬件、操作系统和应用程序层(编程语言、框架和客户端库))之间共享责任。PostgreSQL 文档提供了有关 PostgreSQL 的固有安全功能以及如何安全配置和运行 PostgreSQL 的信息。
PostgreSQL 及 PostgreSQL 生态系统内的软件(包括客户端库、扩展、安装程序和其他实用程序)都可能存在安全漏洞。本页面将介绍 PostgreSQL 中的安全漏洞被视为什么、如何报告 PostgreSQL 安全漏洞以及如何发布安全漏洞的修复程序。
请注意,PostgreSQL 项目不提供 Bug 赏金。
PostgreSQL 项目是 CVE 编号机构 (CNA),与 Red Hat 合作作为我们的 CNA 根机构。这使我们能够分配自己的 CVE 编号并发布 PostgreSQL 和密切相关项目的 CVE 记录。
目前,我们将根据请求,为以下项目分配 CVE 编号,请发送电子邮件至 cna@postgresql.org
其他项目可以通过发送电子邮件至 cna@postgresql.org 来请求包含在上述列表中。
注意:安全团队仅在项目成员请求时为项目分配 CVE。如果您认为您在 PostgreSQL 或其软件包和安装程序以外的项目中发现了安全问题,请联系该项目的安全团队。有关更多详细信息,请参见下文。
PostgreSQL 中的安全漏洞是指允许用户获取他们无权使用的特权或数据的事件,或者允许用户通过 PostgreSQL 进程执行任意代码的事件。
PostgreSQL 安全团队不认为 PostgreSQL 超级用户执行的操作是安全漏洞。但是,关于非特权用户升级为超级用户的报告通常符合条件。
PostgreSQL 安全团队通常不认为来自已认证的有效 SQL 语句的 PostgreSQL 服务器的拒绝服务 (denial-of-service) 是安全漏洞。此类性质的拒绝服务问题仍然可能是Bug,我们鼓励您在报告 Bug 页面上报告。
请不要报告 postgresql.org 邮件列表上缺少 DMARC。这是设计使然。
对于 PostgreSQL 或从PostgreSQL 下载页面链接的任何安装程序中的安全漏洞,请发送电子邮件至 security@postgresql.org。
要报告非安全 Bug,请访问报告 Bug 页面。
如果您不确定某个问题是否是安全漏洞,请谨慎行事,并发送电子邮件至 security@postgresql.org。
有关如何报告 PostgreSQL 相关项目中的安全漏洞,请参见下文。
PostgreSQL 项目将安全修复程序作为次要版本更新的一部分发布。我们始终建议使用可用的最新次要版本,因为它将包含其他与安全无关的修复程序。
包含新功能的新 PostgreSQL 主版本,已包含之前所有的安全修复程序。
如果您发现 PostgreSQL 中的安全漏洞,PostgreSQL 安全团队将在发行说明中为您署名,并为该漏洞注册 CVE。请勿独立于 PostgreSQL 安全团队注册 CVE。
要接收有关安全发布或其他安全相关新闻的通知,您可以订阅pgsql-announce邮件列表。如果您将订阅设置为仅包含Security标签,则会排除发送到此列表的所有其他公告。
PostgreSQL 全球开发组认为,安全信息的准确性、完整性和可用性对我们的用户至关重要。我们选择将所有信息集中在此页面上,以便根据各种标准轻松搜索安全漏洞。这包括
您可以点击下方表格中的链接,获取有关安全漏洞的更详细信息。
您可以过滤补丁视图,仅显示版本补丁
18 - 17 - 16 - 15 - 14 - 13 - 全部
参考 | 受影响 | 已修复 | 组件 & CVSS v3 基本分数 | 描述 |
---|---|---|---|---|
CVE-2025-8715 公告 |
17, 16, 15, 14, 13 | 17.6, 16.10, 15.14, 14.19, 13.22 | 客户端 8.8 AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
PostgreSQL pg_dump 中对象名内的换行符会在 psql 客户端和恢复目标服务器中执行任意代码 更多详情 |
CVE-2025-8714 公告 |
17, 16, 15, 14, 13 | 17.6, 16.10, 15.14, 14.19, 13.22 | 客户端 8.8 AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
PostgreSQL pg_dump 允许源服务器的超级用户在 psql 客户端中执行任意代码 更多详情 |
CVE-2025-8713 公告 |
17, 16, 15, 14, 13 | 17.6, 16.10, 15.14, 14.19, 13.22 | 核心服务器 3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N |
PostgreSQL 优化器统计信息可能会泄露视图、分区或子表中的采样数据 更多详情 |
CVE-2025-4207 公告 |
17, 16, 15, 14, 13 | 17.5, 16.9, 15.13, 14.18, 13.21 | 核心服务器 5.9 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
PostgreSQL GB18030 编码验证可能读取超出分配的、失败验证的文本的一个字节 更多详情 |
CVE-2025-1094 公告 |
17, 16, 15, 14, 13 | 17.3, 16.7, 15.11, 14.16, 13.19 | 客户端 8.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
PostgreSQL 引号 API 在未能中和编码验证失败的文本中的引号语法时存在漏洞 更多详情 |
CVE-2024-10979 公告 |
17, 16, 15, 14, 13, 12 | 17.1, 16.5, 15.9, 14.14, 13.17, 12.21 | 核心服务器 8.8 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
PostgreSQL PL/Perl 环境变量更改会执行任意代码 更多详情 |
CVE-2024-10978 公告 |
17, 16, 15, 14, 13, 12 | 17.1, 16.5, 15.9, 14.14, 13.17, 12.21 | 核心服务器 4.2 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N |
PostgreSQL SET ROLE, SET SESSION AUTHORIZATION 被错误地重置为错误的用户 ID 更多详情 |
CVE-2024-10977 公告 |
17, 16, 15, 14, 13, 12 | 17.1, 16.5, 15.9, 14.14, 13.17, 12.21 | 客户端 3.1 AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N |
PostgreSQL libpq 会保留来自中间人攻击的错误消息 更多详情 |
CVE-2024-10976 公告 |
17, 16, 15, 14, 13, 12 | 17.1, 16.5, 15.9, 14.14, 13.17, 12.21 | 核心服务器 4.2 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N |
PostgreSQL 行安全性在子查询等情况下会忽略用户 ID 更改 更多详情 |
CVE-2024-7348 公告 |
16, 15, 14, 13, 12 | 16.4, 15.8, 14.13, 13.16, 12.20 | 核心服务器 8.8 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
PostgreSQL 在 pg_dump 期间替换关系会执行任意 SQL 更多详情 |
CVE-2024-0985 公告 |
16, 15, 14, 13, 12 | 16.2, 15.6, 14.11, 13.14, 12.18 | 核心服务器 8.0 AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H |
PostgreSQL 非所有者 REFRESH MATERIALIZED VIEW CONCURRENTLY 会执行任意 SQL 更多详情 |
CVE-2023-39417 公告 |
15, 14, 13, 12, 11 | 15.4, 14.9, 13.12, 12.16, 11.21 | 核心服务器 7.5 AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H |
扩展脚本中的 @substitutions@ 在引号内允许 SQL 注入 更多详情 |
CVE-2023-5870 公告 |
16, 15, 14, 13, 12, 11 | 16.1, 15.5, 14.10, 13.13, 12.17, 11.22 | 核心服务器 2.2 AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:L |
角色 "pg_signal_backend" 可以信号某些超级用户进程 更多详情 |
CVE-2023-5869 公告 |
16, 15, 14, 13, 12, 11 | 16.1, 15.5, 14.10, 13.13, 12.17, 11.22 | 核心服务器 8.8 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
整数溢出导致数组修改时发生缓冲区溢出 更多详情 |
CVE-2023-5868 公告 |
16, 15, 14, 13, 12, 11 | 16.1, 15.5, 14.10, 13.13, 12.17, 11.22 | 核心服务器 4.3 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N |
聚合函数调用中存在内存泄露 更多详情 |
CVE-2023-2455 公告 |
15, 14, 13, 12, 11 | 15.3, 14.8, 13.11, 12.15, 11.20 | 核心服务器 4.2 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N |
行安全策略在内联后会忽略用户 ID 更改 更多详情 |
CVE-2023-2454 公告 |
15, 14, 13, 12, 11 | 15.3, 14.8, 13.11, 12.15, 11.20 | 核心服务器 7.2 AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H |
CREATE SCHEMA ... schema_element 绕过了受保护的 search_path 更改 更多详情 |
CVE-2022-41862 公告 |
15, 14, 13, 12 | 15.2, 14.7, 13.10, 12.14 | 客户端 3.7 AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N |
客户端在连接到修改后的服务器(使用 Kerberos)时可能发生内存泄露 更多详情 |
CVE-2022-2625 公告 |
14, 13, 12, 11, 10 | 14.5, 13.8, 12.12, 11.17, 10.22 | 核心服务器 7.1 AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H |
扩展脚本会替换不属于扩展的对象 更多详情 |
CVE-2022-1552 公告 |
14, 13, 12, 11, 10 | 14.3, 13.7, 12.11, 11.16, 10.21 | 核心服务器 8.8 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Autovacuum、REINDEX 等忽略了 "安全限制操作" 沙箱 更多详情 |
CVE-2021-32029 公告 |
13, 12, 11 | 13.3, 12.7, 11.12 | 核心服务器 6.5 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N |
分区表 UPDATE ... RETURNING 中存在内存泄露 更多详情 |
CVE-2021-32028 公告 |
13, 12, 11, 10, 9.6 | 13.3, 12.7, 11.12, 10.17, 9.6.22 | 核心服务器 6.5 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N |
INSERT ... ON CONFLICT ... DO UPDATE 中存在内存泄露 更多详情 |
CVE-2021-32027 公告 |
13, 12, 11, 10, 9.6 | 13.3, 12.7, 11.12, 10.17, 9.6.22 | 核心服务器 6.5 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N |
整数溢出导致数组下标计算中发生缓冲区溢出 更多详情 |
CVE-2021-23222 公告 |
14, 13, 12, 11, 10, 9.6 | 14.1, 13.5, 12.9, 11.14, 10.19, 9.6.24 | 客户端 3.7 AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N |
libpq 处理来自中间人攻击的未加密字节 更多详情 |
CVE-2021-23214 公告 |
14, 13, 12, 11, 10, 9.6 | 14.1, 13.5, 12.9, 11.14, 10.19, 9.6.24 | 核心服务器 8.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
服务器处理来自中间人攻击的未加密字节 更多详情 |
CVE-2021-20229 公告 |
13 | 13.2 | 核心服务器 3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N |
单列 SELECT 权限允许读取所有列 更多详情 |
CVE-2021-3677 公告 |
13, 12, 11 | 13.4, 12.8, 11.13 | 核心服务器 6.5 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N |
某些查询中存在内存泄露 更多详情 |
CVE-2021-3393 公告 |
13, 12, 11 | 13.2, 12.6, 11.11 | 核心服务器 3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N |
分区约束违规错误会泄露被拒绝列的值 更多详情 |
CVE-2020-25696 公告 |
13, 12, 11, 10, 9.6, 9.5 | 13.1, 12.5, 11.10, 10.15, 9.6.20, 9.5.24 | 客户端 7.5 AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H |
psql 的 \gset 允许覆盖特殊处理的变量 更多详情 |
CVE-2020-25695 公告 |
13, 12, 11, 10, 9.6, 9.5 | 13.1, 12.5, 11.10, 10.15, 9.6.20, 9.5.24 | 核心服务器 8.8 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
多个功能逃逸 "安全限制操作" 沙箱 更多详情 |
CVE-2020-25694 公告 |
13, 12, 11, 10, 9.6, 9.5 | 13.1, 12.5, 11.10, 10.15, 9.6.20, 9.5.24 | 客户端 8.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
重新连接会降低连接安全设置 更多详情 |
您还可以查看不受支持版本的已存档安全补丁。请注意,这些版本已到达生命周期终点,不再提供安全补丁。
12 -
11 -
10 -
9.6 -
9.5 -
9.4 -
9.3 -
9.2 -
9.1 -
9.0 -
8.4 -
8.3 -
8.2 -
8.1 -
8.0 -
7.4 -
7.3
上述表格中使用的以下组件参考
组件 | 描述 |
---|---|
核心服务器 | 此漏洞存在于核心服务器产品中。 |
客户端 | 此漏洞仅存在于客户端库或客户端应用程序中。 |
contrib 模块 | 此漏洞存在于 contrib 模块中。从源码安装 PostgreSQL 时,contrib 模块默认不安装。它们可能由二进制包安装。 |
客户端 contrib 模块 | 此漏洞存在于仅在客户端使用的 contrib 模块中。 |
打包 | 此漏洞存在于 PostgreSQL 二进制打包中,例如安装程序或 RPM。 |
PostgreSQL 安全团队由 PostgreSQL 项目的一组贡献者组成,他们在数据库和信息安全的各个方面都具有经验。
您可以在此处找到安全团队成员列表