PostgreSQL 优化器统计信息可能会在视图、分区或子表中暴露采样数据HGVE-2025-E006

文章目录

环境

系统平台:N/A

版本:9.0.3,9.0.4

BUG/漏洞编码

HGVE-2025-E006

症状

PostgreSQL 优化器统计信息可能允许用户读取其本不应访问的采样数据。具体来说,统计信息可能允许用户读取那些行级安全策略原本要隐藏的数据。PostgreSQL 通过对表中列进行数据采样来维护统计信息,这些信息会在查询规划过程中被使用。在此次修复之前,用户可以构造一个"泄露型运算符"(leaky operator),从而绕过视图的访问控制列表(ACLs),以及在分区或表继承层级中的行级安全策略。可被访问到的统计数据主要包括直方图和最常见值(MCV)列表。CVE-2017-7484 和 CVE-2019-10130 原本旨在封堵这一类漏洞,但仍然存在缺口。受影响的版本包括 PostgreSQL 17.6、16.10、15.14、14.19 和 13.22 之前的版本。

触发条件

PostgreSQL 在进行查询优化时,会基于 pg_statistic 系统表中的采样数据进行估算。 然而,在执行计划生成过程中,某些自定义运算符被标记为 leakproof = false(默认值),攻击者可以利用这些非泄露型运算符,间接推断出统计信息中的敏感数据。 例如: 1.用户对某列没有访问权限; 2.但通过构造布尔表达式 (col = constant) 并结合查询计划器的选择性估算函数,仍可从直方图或 MCV 列表中泄露值分布信息。

解决方案

整体修复方案:pg_dump导出时在导出的sql文件末尾添加校验,用psql恢复时对sql文件进行校验。

1.修复pg_dump工具

2.修复函数psql工具的HandleSlashCmds

3.修复函数exec_command

补丁下载地址: 链接: https://pan.baidu.com/s/19Wz6FR7YzUfEFDxefTzAUg?pwd=jyhr 提取码: jyhr

相关推荐
Mike117.3 分钟前
GBase 8a 宽表查询里的压缩和行存列取舍
java·开发语言·数据库
派大星的日常4 分钟前
64位windo系统安装ODBC链接工具并进行EXCEL数据连接
数据库·excel
小徐学编程-zZ8 分钟前
拆解业务逻辑分析
数据库·学习
染指11109 分钟前
2.AI大模型-链式思考TOC让AI实现思考-优秀提示词设计技巧
大数据·数据库·人工智能
m0_6245785912 分钟前
SQL数据更新时如何减少锁表时间_合理控制事务边界与并发
jvm·数据库·python
2401_8676239818 分钟前
如何提取SQL日期中的月份_使用MONTH函数快速过滤
jvm·数据库·python
ㄟ留恋さ寂寞20 分钟前
JavaScript中箭头函数在大括号省略时的隐式返回机制
jvm·数据库·python
Chockmans22 分钟前
春秋云境CVE-2022-32991(手注和sqlmap)保姆级教学
数据库·安全·web安全·网络安全·oracle·春秋云境·cve-2022-32991
上海蓝色星球27 分钟前
从工具到资产:CER V2.0 造价机器人如何重构企业核心竞争力
java·数据库·mysql
i220818 Faiz Ul33 分钟前
高校教务|教务管理|基于springboot+vue的高校教务管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·高校教务系统