PostgreSQL pg_dump对象名称中有换行符时可导致psql客户端及恢复目标服务器执行任意恶意代码HGVE-2025-E008

文章目录

环境

系统平台:N/A

版本:9.0.3,9.0.4

BUG/漏洞编码

HGVE-2025-E008

症状

PostgreSQL中的pg_dump、pg_dumpall工具对换行符的处理不当,使得原始服务器上的用户能够通过在精心构造的对象名称中插入psql元命令,将任意代码注入到由用于恢复转储文件的客户端操作系统账户(运行 psql)执行的恢复过程中。同样的攻击手段还可导致在目标恢复服务器上以超级用户身份进行 SQL 注入。pg_dumpall、pg_restore 和 pg_upgrade 也受到此问题影响。受影响的版本包括 PostgreSQL 17.6、16.10、15.14、14.19 和 13.22 之前的版本。11.20 之前的版本不受影响。此类问题曾由 CVE-2012-0868 修复,但在版本 11.20 中被重新引入。

触发条件

对象命中存在换行符的情况下,pg_dump导出生成注释时,会将换行符后的内容转到下一行,导致部分内容从注释中逃逸。使用psql恢复时,会错误地执行逃逸部分的注释内容。

解决方案

整体修复方案:pg_dump导出时,在生成对象注释时,将换行符(\n)替换为空格,保证对象名中的字符串不会从注释中逃逸。

补丁下载地址: 链接: https://pan.baidu.com/s/1W2DORVFhZAGs_31-dLJN1w?pwd=86q6 提取码: 86q6

相关推荐
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
这个DBA有点耶3 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
DBA_G3 天前
从地面到云霄:GBase数据库在民航三大场景的落地实践
数据库
自由能燃气设备3 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远3 天前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
geovindu3 天前
sql: Transaction & Concurrency Patterns using postgresql 18
postgresql·数据库开发·数据库架构
2601_962218613 天前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法
-梅3 天前
linux(8) 软硬链接
linux·运维·服务器
Wang's Blog3 天前
Java 项目实战: 外卖平台-文件下载与ServletOutputStream回写浏览器
服务器·项目开发
张洛闻Eren3 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github