由 John Doe 五月 15, 2026
PostgreSQL 全球开发组已发布所有受支持版本的更新,包括 18.4、17.10、16.14、15.18 和 14.23 版本。本次更新修复了过去数月内报告的11 个安全漏洞及60 余个程序缺陷。

完整变更列表请查看发行说明。
PostgreSQL 14 版本终止支持公告
PostgreSQL 14 将于2026 年 11 月 12 日停止所有漏洞修复支持。若生产环境仍在使用该版本,建议尽快规划升级至更新的受支持版本。更多详情请参阅版本支持策略。
安全问题
CVE-2026-6472:CREATE TYPE 未检查多范围(multirange)模式的创建权限
CVSS 3.1 基础评分:5.4
受影响版本:14 - 18
CREATE TYPE 语句存在授权缺失漏洞,对象创建者可劫持依赖 search_path 查找用户自定义类型(含扩展定义类型)的查询。受害者将执行攻击者指定的任意 SQL 函数。18.4、17.10、16.14、15.18、14.23 之前的版本均受影响。
感谢 Jelte Fennema-Nio 报告此问题。
CVE-2026-6473:服务器内存分配不足,存在整数溢出漏洞
CVSS 3.1 基础评分:8.8
受影响版本:14 - 18
服务器多项功能存在整数溢出问题,攻击者可通过构造应用输入,触发内存分配不足并导致越界写入,最终造成服务器段错误崩溃。18.4、17.10、16.14、15.18、14.23 之前的版本均受影响。
感谢 Anemone、A1ex、Xint Code、Jihe Wang、Jingzhou Fu、Pavel Kohout、Petr Simecek、www.aisle.com、Calif.io 的 Bruce Dang 及 Sven Klemm 报告此问题。
CVE-2026-6474:timeofday() 函数可能泄露服务器内存片段
CVSS 3.1 基础评分:4.3
受影响版本:14 - 18
timeofday() 函数存在可被外部控制的格式化字符串漏洞,攻击者可通过构造时区信息,读取服务器内存片段数据。18.4、17.10、16.14、15.18、14.23 之前的版本均受影响。
感谢 Xint Code 报告此问题。
CVE-2026-6475:pg_basebackup 与 pg_rewind 可覆盖源超级用户指定的无关文件
CVSS 3.1 基础评分:8.8
受影响版本:14 - 18
pg_basebackup 普通格式备份及 pg_rewind 工具存在符号链接跟随漏洞,源数据库超级用户可覆盖本地文件(如 /var/lib/postgres/.bashrc),劫持操作系统账户。由于 shared_preload_libraries 等特性,执行相关命令后启动服务器时会默认信任源超级用户,因此仅在命令执行后至服务器启动前存在操作(如迁移文件至其他虚拟机、虚拟机快照)时,漏洞才具备实际利用价值。18.4、17.10、16.14、15.18、14.23 之前的版本均受影响。
感谢 Valery Gubanov、腾讯玄武实验室 XlabAI 团队、Atuin 自动化漏洞挖掘引擎、Zhanpeng Liu、Guannan Wang 及 Guancheng Li 报告此问题。
CVE-2026-6476:pg_createsubscriber 函数存在通过订阅名称注入 SQL 的漏洞
CVSS 3.1 基础评分:7.2
受影响版本:17 - 18
pg_createsubscriber 函数存在 SQL 注入漏洞,拥有 pg_create_subscription 权限的攻击者可在下次执行该函数时,以超级用户身份执行任意 SQL 语句。18.4、17.10 之前的 17、18 版本受影响;17 之前版本不受影响。
感谢 Yu Kunpeng 报告此问题。
CVE-2026-6477:libpq 大对象(lo_*)函数允许服务器超级用户覆盖客户端栈内存
CVSS 3.1 基础评分:8.8
受影响版本:14 - 18
libpq 库中 lo_export()、lo_read()、lo_lseek64()、lo_tell64() 函数调用了危险的 PQfn(..., result_is_int=0, ...) 接口,服务器超级用户可通过返回超大响应,覆盖客户端栈缓冲区(类似 gets() 函数安全风险)。由于 psql 的 \lo_export 命令及 pg_dump 工具均调用 lo_read(),攻击者可借此覆盖 pg_dump 或 psql 的栈内存。18.4、17.10、16.14、15.18、14.23 之前的版本均受影响。
感谢 Yu Kunpeng 及 Martin Heistermann 报告此问题。
CVE-2026-6478:通过隐蔽时间通道泄露 MD5 哈希密码
CVSS 3.1 基础评分:6.5
受影响版本:14 - 18
数据库认证时,MD5 哈希密码对比存在隐蔽时间通道漏洞,攻击者可借此还原用户认证凭据。该漏洞不影响默认启用的 scram-sha-256 加密密码,但从 13 及更早版本升级而来的数据库可能仍存在 MD5 哈希密码。18.4、17.10、16.14、15.18、14.23 之前的版本均受影响。
感谢 Joe Conway 报告此问题。
CVE-2026-6479:SSL/GSS 初始化存在无限制递归漏洞,导致拒绝服务
CVSS 3.1 基础评分:7.5
受影响版本:14 - 18
SSL/GSS 协商过程存在无限制递归漏洞,攻击者可连接数据库 AF_UNIX 套接字,发起持续拒绝服务攻击;若同时禁用 SSL 和 GSS,攻击者也可通过 TCP 套接字发起攻击。18.4、17.10、16.14、15.18、14.23 之前的版本均受影响。
感谢 Calif.io 联合 Claude 及 Anthropic Research 报告此问题。
CVE-2026-6575:pg_restore_attribute_stats 函数输入异常导致查询规划越界读取
CVSS 3.1 基础评分:4.3
受影响版本:18
pg_restore_attribute_stats() 函数接受长度不匹配的数组值,导致查询规划阶段越界读取数组末尾数据,表维护者可借此推断内存数据。18.4 之前的 18 版本受影响;18 之前版本不受影响。
感谢 Jeroen Gui 报告此问题。
CVE-2026-6637:refint 模块存在栈缓冲区溢出及 SQL 注入漏洞
CVSS 3.1 基础评分:8.8
受影响版本:14 - 18
refint 模块存在栈缓冲区溢出漏洞,无数据库权限用户可借此以数据库运行操作系统用户身份执行任意代码。若应用将用户可控列声明为 refint 级联主键并允许用户更新,攻击者还可通过 SQL 注入,以执行主键更新的数据库用户身份执行任意 SQL。18.4、17.10、16.14、15.18、14.23 之前的版本均受影响。
感谢 Nikolay Samokhvalov 报告此问题。
CVE-2026-6638:REFRESH PUBLICATION 语句存在通过表名注入 SQL 的漏洞
CVSS 3.1 基础评分:3.7
受影响版本:16 - 18
逻辑复制 ALTER SUBSCRIPTION ... REFRESH PUBLICATION 语句存在 SQL 注入漏洞,订阅端表创建者可在下次执行刷新操作时,以发布端订阅凭据身份执行任意 SQL。18.4、17.10、16.14 之前的 16、17、18 版本受影响;16 之前版本不受影响。
感谢 Pavel Kohout、Aisle Research 报告此问题。
缺陷修复与功能优化
本次更新修复了过去数月报告的 60 余个程序缺陷,以下为 18 版本相关修复内容(部分修复同样适用于其他受支持版本):
- 修复非确定性排序规则下,唯一索引查询结果异常问题
- 修复外键触发器延迟性丢失问题:
DEFERRABLE INITIALLY DEFERRED外键在切换为NOT ENFORCED再恢复ENFORCED后,会丧失延迟执行特性;更新后可通过再次切换状态修复 - 优化查询规划器分区裁剪能力,覆盖更多场景
- 修复自连接消除逻辑,支持布尔列连接条件(如
ON t1.boolcol) - 修复虚拟生成列相关缺陷,确保
INSERT ... ON CONFLICT语句可正常引用EXCLUDED虚拟列 - 修复
MERGE语句在 “可重复读”“串行化” 隔离级别下,并发更新元组触发序列化失败的异常 - 修复
CREATE TABLE ... LIKE ... INCLUDING STATISTICS语句,适配源表含已删除列场景 - 修复
WITHOUT OVERLAPS约束,支持域类型 - 禁止通过多范围(multirange)将复合类型设为自身成员
- 修复并行执行
array_agg(anyarray)结果异常问题 - 防止增量备份恢复过程中数据膨胀
- 修复逻辑复制槽同步进程卡死,导致备用服务器提升受阻问题
- 优化
pg_aios系统视图:无所属进程时,pid列显示NULL而非0 - 修复复制正常时,
pg_stat_replication延迟信息显示NULL的问题 - 修复
GROUP BY子句中 JOIN 别名变量显示异常问题 - 修复启动进程失败时,未正常关闭子进程的问题
- 修复备用服务器同步旧版本主服务器 WAL 日志时,循环崩溃重启的竞态条件问题
- 修复逻辑复制数据发布时,WAL 发送进程关闭无限等待问题
- 确保恢复过程中持久化空闲空间映射数据,优化备用服务器提升后性能
- 修复
pg_basebackup、pg_verifybackup备份解压及 tar 解析相关缺陷 - 恢复
pg_dumpall对含悬空授权者 OID 角色授权的导出能力(适配 16 之前版本行为),16 及以上源服务器会提示授权者缺失警告 - 修复
pg_upgrade连接旧版本源服务器时协议版本错误问题 - 修复
pg_overexplain工具RANGE_TABLE选项输出异常问题 - 修复
postgres_fdw连接失败后提前清理资源导致崩溃的问题
本次更新同步升级时区数据至 tzdata 2026b 版本:
- 加拿大不列颠哥伦比亚省(温哥华时区)自 2026 年 11 月起永久采用 UTC-07 时区(永久夏令时),时区缩写暂定为 MST(后续可能调整)
- 修正摩尔多瓦时区历史数据:2022 年起采用欧盟夏令时切换规则
更新说明
PostgreSQL 所有小版本更新均为累积更新,无需导出 / 重载数据库或使用 pg_upgrade,仅需停止数据库服务、替换二进制文件即可完成升级。
若跳过多个版本更新,可能需执行额外后续操作,具体请查阅对应旧版本发行说明。
更多详情请查看发行说明。
参考
PostgreSQL 新闻: https://www.postgresql.org/about/news/postgresql-184-1710-1614-1518-and-1423-released-3297/