PostgreSQL RCE PoC — CVE-2025-8714
此仓库提供了影响 PostgreSQL 版本(低于 17.6, 16.10, 15.14, 14.19, 13.22 及 18 Beta...)的关键漏洞 CVE-2025-8714 的概念验证 (PoC)。该漏洞允许拥有源服务器超级用户权限的攻击者,向使用 pg_dump 或 pg_dumpall 生成的纯文本格式数据库转储中注入任意命令。这些命令将以还原转储的用户权限执行(通过 psql),从而实现远程代码执行 (RCE)。
CVE-2025-8714 漏洞存在于 PostgreSQL 生成和处理纯文本转储的方式中。拥有超级用户权限的用户可以在转储中添加元命令,这些命令在还原转储时被执行,从而可能导致操作系统上的任意命令执行。
本 PoC 演示了如何在 Docker 环境下利用 PostgreSQL 14.14 的此漏洞,从受害容器向攻击者获取一个反向 shell。
poc.sh # 带有自动化 PoC 和注释的 Bash 脚本 README.md # 技术文档、使用指南和道德考量
nc) 用于打开监听器git clone https://github.com/orderby99/CVE-2025-8714-POC.git
cd CVE-2025-8714-POC
编辑 poc.sh,将 ATTACKER_IP 替换为你攻击机器的 IP(你将在该机器上打开 netcat)。
在你的攻击机器上启动一个监听器:
nc -lvnp 4444
运行 PoC:
chmod +x poc.sh ./poc.sh
你将收到来自受害 PostgreSQL 容器的反向 shell。
未经授权在非你拥有的系统上使用是非法且不道德的。
建议的缓解措施
升级到已修补的版本:PostgreSQL 17.6, 16.10, 15.14, 14.19, 13.22 或更高。
避免还原来自不可信来源的纯文本格式转储。
使用安全的转储格式(custom 或 directory)。
在还原前检查转储内容。
MIT 许可证 — 免费用于教育和研究。
作者:orderby99 此仓库致力于分享实用知识,以理解新漏洞的工作原理以及如何防范它们。