安多多支持检测:CVE-2025-8715 PostgreSQL高危RCE
安多多支持检测:CVE-2025-8715 PostgreSQL高危RCE
作者:让天下没有难做的安全 | 发布时间:2025年8月15日 17:56
原文链接:微信公众号
漏洞概述
CVE-2025-8715 是一个严重的安全漏洞,其根本原因在于 pg_dump、pg_dumpall、pg_restore、pg_upgrade工具未正确处理对象名称中的换行符,导致注释逃逸和命令注入。该漏洞与历史漏洞 CVE-2012-0868 具有相同原因,是软件代码回退导致的问题。
https://github.com/postgres/postgres/commit/70693c645f6e490b9ed450e8611e94ab7af3aad2
影响范围
PostgreSQL < 17.6
PostgreSQL < 16.10
PostgreSQL < 15.14
PostgreSQL < 14.19
PostgreSQL < 13.22
不受影响版本
PostgreSQL < 11.20(即 11.20 之前版本不受影响)
所有已修复版本(如 17.6、16.10 等)
漏洞原理
CVE-2025-8715 的根本原因在于 PostgreSQL 的 g_dump、pg_dumpall、pg_restore、pg_upgrade工具在处理对象名称时未正确过滤换行符,导致攻击者能够通过构造特制的数据库对象名称实现命令注入。具体机制如下:
注入pg 的元数据\!:攻击者创建包含换行符(
\n)和恶意代码的数据库对象(如表名、视图名等)漏洞触发:当
pg_dump等备份数据库时,这些特殊字符被原样输出到备份脚本中命令执行:在恢复过程中,
psql解析备份脚本时,换行符导致注释逃逸,恶意代码被当作可执行命令处理
验证
-- 正常备份输出示例
-- Name: public.normal_table; Type: TABLE; Schema: public; Owner: postgres
CREATETABLE public.normal_table(
id integer
);
-- 恶意对象备份输出(漏洞触发)
-- Name: public.malicious_table\n\! rm -rf /; Type: TABLE; Schema: public; Owner: postgres
CREATETABLE public.malicious_table
! rm -rf / (
id integer
);
危害
漏洞允许攻击者在数据库恢复过程中执行任意系统命令
攻击者只需具备创建数据库对象的权限即可发起攻击
漏洞影响范围广泛,涉及多个 PostgreSQL 版本,尤其是云服务
安多多已支持检测:


参考链接
- [NVD Detail](https://nvd.nist.gov/vuln/detail/CVE-2025-8715)
- [MITRE CVE Record](https://www.cve.org/CVERecord?id=CVE-2025-8715)
- [PostgreSQL 官方安全公告](https://www.postgresql.org/support/security/CVE-2025-8715/)
- [OpenCVE 漏洞详情](https://app.opencve.io/cve/CVE-2025-8715)
- [PostgreSQL 14.19 Release Notes](https://www.postgresql.org/docs/release/14.19)
- [CVE-2012-0868 PostgreSQL 安全公告](https://www.postgresql.org/support/security/CVE-2012-0868)