PostgreSQL Global Development Group 今天發布了 PostgreSQL 數據庫系統所有活動分支的安全性更新,包括 9.1.4、9.0.8、8.4.12 和 8.3.19 版本。
在可選的 pgcrypto
模組中使用帶有 DES 加密的 crypt(text, text)
函數的用戶應立即升級其安裝。 強烈建議所有其他數據庫管理員在下次計劃的停機時間升級您的 PostgreSQL 版本。 有關安全性修復的更多詳細資訊包含在下面。
此版本包含 42 個針對 9.1 版本的修復,以及針對舊版本的較少數量的修復,包括
citext
升級腳本,用於 citext
數組的排序規則以及在 citext
上的域text
或 char
到 name
的轉換,以便在多字節編碼中正確執行字符串截斷to_tsquery()
中的內存複製錯誤txid_current()
在熱備用中執行時報告正確的 epochSELECTS
的處理,該子-SELECTS
引用來自周圍查詢的外連接的可空側的變量UNION ALL
子查詢的規劃pg_attribute
非常大時的會話啟動緩慢問題COPY FROM
以正確處理與無效編碼相對應的空標記字符串RETURNING
子句的可寫 CTE 的 EXPLAIN VERBOSE
PREPARE TRANSACTION
以便在存在諮詢鎖的情況下正常工作SIGHUP
後將重新啟動文件輪換與其他次要版本一樣,用戶無需轉儲和重新加載其數據庫或使用 pg_upgrade
即可應用此更新版本; 您可以簡單地關閉 PostgreSQL 並更新其二進制文件。 數據庫重新啟動後,執行更新後步驟。 如果您使用 citext
數據類型,並且您通過運行 pg_upgrade
從以前的主要版本升級,請參閱 9.1.4 的發布說明以獲取重要的升級後步驟。
此更新包含以下問題的兩個安全性修復
crypt()
函數中的不正確密碼轉換此漏洞會影響使用帶有 DES 加密和非 ASCII 密碼的 crypt(text, text)
函數(在可選的 pgcrypto 模組中)的 PostgreSQL 用戶。 受影響的密碼是包含字節值 0x80
的密碼。 在此類字節之後的字符將被忽略,從而使有效密碼比應有的密碼更短且更容易破解。 升級後,任何包含此類字節的密碼都需要重新生成。
SECURITY DEFINER
和 SET
屬性將此類屬性應用於調用處理程序可能會導致伺服器崩潰。
所有受支援的 PostgreSQL 版本都受到影響。 有關修復細節和步驟的完整更改列表,請參閱每個版本的發布說明。
立即從主下載頁面下載新版本。