四条 SQL 与一次段错误:PostgreSQL 埋了 22 年的类型混淆漏洞
来源:dev.to — 2026-11-13
📋 概述
CVE-2026-6460 的根因是预处理语句与类型系统之间的错位:创建一个复合类型、准备好一条把它当返回类型的语句、修改该类型的属性、再执行,服务器就会段错误——而且用零权限的登录角色就能做到。这个原语从 2004 年 5 月 ALTER TABLE 的改类型能力落地起,就存在于每一个 PostgreSQL 版本里。作者在本机从源码编译了有漏洞的 17.11 现场跑崩,又在修好的 17.12 上跑同样四条语句,两次输出都原样贴出。
🔑 核心要点
- 漏洞不依赖超级用户,最低权限的普通登录角色即可触发。
- 修复出现在 11 月 9 日的安全版本,该批次共 52 个 CVE,其中六个来自这项研究。
- 研究者的完整链条通过伪造方法表把段错误升级成任意代码执行。
- 现场复现的意义在于:结论不是从公告里读来的,而是在两个版本上跑出来的。
💡 金句
“Four SQL statements. A login role with zero privileges. A segmentation fault.”
译:四条 SQL 语句,一个零权限的登录角色,一次段错误。
👍 0
👎 0
← 返回 dev.to 首页