PostgreSQL psql 的 COPY 命令若纳入不可信数据,服务器管理员可能通过注入错误,诱使 psql 把数据行作为命令执行。如果 COPY FROM STDIN 或 \copy FROM STDIN 在服务器表示已准备接收输入行之前失败, psql 就会把后续内联数据行当作 psql 命令处理;指定文件名的 COPY FROM 不受影响。服务器管理员本身 无法控制这些数据行,因此完整利用通常需要攻击者同时控制服务器与数据行。另一种可能是,攻击者仅控制数据行, 再借助一个其无法控制但恰好发生的错误完成攻击。PostgreSQL 18.6、17.11、16.15、15.19 和 14.24 之前的版本受此问题影响。
| 影响版本 | 修复于 | 修复发布 |
|---|---|---|
| 18 | 18.6 | 2026年8月13日 |
| 17 | 17.11 | 2026年8月13日 |
| 16 | 16.15 | 2026年8月13日 |
| 15 | 15.19 | 2026年8月13日 |
| 14 | 14.24 | 2026年8月13日 |
有关 PostgreSQL 版本策略的更多信息,请访问版本策略页面。
| 总分 | 8.1 |
|---|---|
| 组件 | client |
| 向量 | AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
如果您希望报告 PostgreSQL 中的新安全漏洞,请发送电子邮件至 security@postgresql.org。
如需报告非安全性 Bug,请参阅报告 Bug 页面。