\gset 元命令根據查詢結果設定 psql 變數,但它無法區分控制 psql 行為的變數。如果互動式 psql 會話在查詢受攻擊的伺服器時使用 \gset,攻擊者就可以以執行 psql 的作業系統賬戶的身份執行任意程式碼。在未打補丁的 psql 中,使用 \gset 配合不在特殊處理變數中的字首(例如任何小寫字串)可以阻止此攻擊。
PostgreSQL 專案感謝 Nick Cleaton 報告此問題。
| 受影響版本 | 已修復版本 | 修復釋出日期 |
|---|---|---|
| 13 | 13.1 | 2020 年 11 月 12 日 |
| 12 | 12.5 | 2020 年 11 月 12 日 |
| 11 | 11.10 | 2020 年 11 月 12 日 |
| 10 | 10.15 | 2020 年 11 月 12 日 |
| 9.6 | 9.6.20 | 2020 年 11 月 12 日 |
| 9.5 | 9.5.24 | 2020 年 11 月 12 日 |
有關 PostgreSQL 版本資訊 的更多資訊,請訪問 版本資訊頁面。
| 總體得分 | 7.5 |
|---|---|
| 元件 | 客戶端 |
| 向量 | AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H |
如果您希望報告 PostgreSQL 中的新安全漏洞,請傳送電子郵件至 security@postgresql.org。
如需報告非安全相關錯誤,請參閱 報告錯誤 頁面。