許多 PostgreSQL 提供的客戶端應用程式都包含建立額外資料庫連線的選項。其中一些應用程式僅重用基本的連線引數(例如 host、user、port),而丟棄其他引數。如果丟棄了安全相關的引數(例如 channel_binding、sslmode、requirepeer、gssencmode),攻擊者就有機會完成中間人(MITM)攻擊或竊聽明文傳輸。
受影響的應用程式包括 clusterdb、pg_dump、pg_restore、psql、reindexdb 和 vacuumdb。只有當使用包含安全相關引數的連線字串呼叫受影響的客戶端應用程式時,才會出現此漏洞。
這也修復了 psql 的 \connect 命令重用連線引數的方式,即現在重用了來自先前連線字串的所有未被覆蓋的引數。
PostgreSQL 專案感謝 Peter Eisentraut 報告了此問題。
| 受影響版本 | 已修復版本 | 修復釋出日期 |
|---|---|---|
| 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 版本資訊 的更多資訊,請訪問 版本資訊頁面。
| 總體得分 | 8.1 |
|---|---|
| 元件 | 客戶端 |
| 向量 | AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
如果您希望報告 PostgreSQL 中的新安全漏洞,請傳送電子郵件至 security@postgresql.org。
如需報告非安全相關錯誤,請參閱 報告錯誤 頁面。