PostgreSQL 全球开发组针对当前所有被支持版本发布了一次更新,版本包括:15.3、14.8、13.11、12.15 和 11.20。此版本修复了两个安全漏洞并修复了过去几个月报告的 80 多个 bug。
CVE-2023-2454:CREATE SCHEMA ... schema_element
破坏保护性 search_path 更改。
受影响的版本:11 - 15。
这使具有数据库级CREATE
权限的攻击者能够以 bootstrap 超级用户身份执行任意代码。默认情况下,数据库所有者拥有该权利,并且显式授权可以将其扩展到其他用户。
CVE-2023-2455:行安全策略忽略内联后的用户 ID 更改。
受影响的版本:11 - 15。
虽然 CVE-2016-2193 修复了行安全性和用户 ID 更改之间的大部分交互,但它遗漏了涉及函数内联的场景。在使用特定于角色的策略并且给定查询在一个角色下计划然后在其他角色下执行的情况下,这会导致应用可能不正确的策略。这种情况可能发生在 security definer functions 下,或者当最初计划一个普通用户和查询然后跨多个 SET ROLE 重新使用时。应用不正确的策略可能允许用户完成其他被禁止的读取和修改。这仅影响那些使用 CREATE POLICY
定义行安全策略的数据库。
错误修复和改进
下面列出的问题影响 PostgreSQL 15,其中一些问题也可能影响其他支持的 PostgreSQL 版本。
- 当使用
STRATEGY = WAL_LOG
时,对CREATE DATABASE
进行了一些修复,包括可能丢失对模板/源数据库修改的潜在损坏。 - 修复了
CREATE SCHEMA AUTHORIZATION
的崩溃。 MERGE
的几个修复程序。- 对分区表中的触发器进行了多项修复。
- 不允许更改存储在索引中的复合类型。
- 确保从启用了row-level security 的父表中
COPY TO
时,不会从子表复制任何行。 - 调整文本搜索相关的字符分类逻辑,在数据库默认 排序 规则使用 provider 时,正确检测当前语言环境是否为 C。
- 重新允许在 ISO-8601 区间字段中使用指数符号。
- 改进各种无效 JSON 字符串文字的错误报告。
- 修复由于
vacuum_defer_cleanup_age
大于当前 64 位 xid 而导致的数据损坏。 - 查询解析器和规划器的几个修复,包括更好地检测不正确嵌套的聚合。
- 修复了在 boolean
IS NOT TRUE
和IS NOT FALSE
条件下的 partition pruning bug。在此之前,NULL partitions 会被意外地剪除。 - 修复 memoize plan execution 中的内存泄漏。
- 修复在执行分批插入时使用分区的外域表的缓冲区 refcount 泄漏。
- 恢复对 sub-millisecond
vacuum_cost_delay
设置的支持。 - 视图和规则的几个修复 。
- 在使用多个扫描键扫描多列时避免不必要的工作。在扫描具有多个扫描键的多列 BRIN 索引时,避免不必要的工作。
- 在
UPDATE
或DELETE
操作的逻辑复制期间忽略丢弃的列和生成的列 。 - 对等待事件的命名和可用性进行了多项修复。
- 支持带有 SCRAM-SHA-256 通道绑定的 RSA-PSS 证书 。此功能需要使用 OpenSSL 1.1.1 或更新版本构建。
- 修复会话中使用 cast expressions 的 PL/pgSQL
DO
块的内存泄漏。 - 在将列表结构转换为多维 SQL 数组时,加强 PL/Perl 和 PL/Python 的数组维数检查。
- 修复了
pg_dump
,以便可以成功恢复在枚举类型列上进行 hash-partitioned 的分区表 。 - 修复了
pg_trgm
使用 GiST 或 GIN 索引时无法满足的正则表达式可能导致崩溃的问题。 - 限制
pg_walinspect
中的pg_get_wal_records_info()
内存使用。
此版本还将时区数据文件更新为 tzdata 版本 2023c,以适应埃及、格陵兰、摩洛哥和巴勒斯坦的 DST 法律变更。在遵守莫斯科时间时,Europe/Kirov 和 Europe/Volgograd 现在使用缩写 MSK/MSD 而不是数字缩写,以与遵守莫斯科时间的其他时区保持一致。此外,America/Yellowknife 不再区别于 America/Edmonton;这会影响该地区的一些 1948 年之前的时间戳。
有关可用更改的完整列表,可查看 发行说明。
下载地址:https://www.postgresql.org/download/
为您推荐与 postgresql 相关的帖子: