Spring Security 安全性公告

CVE-2022-22976:BCrypt 跳過工作因子為 31 的 Salt 迭代

中等 | 2022 年 5 月 17 日 | CVE-2022-22976

描述

Spring Security 5.5.x 版本(低於 5.5.7)、5.6.x 版本(低於 5.6.4)以及更早且不受支援的版本包含一個整數溢位漏洞。當使用 BCrypt 類別且工作因子 (work factor) 為最大值 (31) 時,由於整數溢位錯誤,編碼器不會執行任何 salt 迭代。

預設設定不受此 CVE 影響。

僅在 BCryptPasswordEncoder 配置為最大工作因子的情況下才會受到影響。由於目前電腦硬體的限制,使用如此高的工作因子在計算上是不切實際的。

您需要使用工作因子為 31 的 BCrypt 才會受到影響。您可以使用以下緩解工具來檢查您的密碼是否受到影響。

受影響的 Spring 產品和版本

  • Spring Security
    • 5.5.x 版本(低於 5.5.7)
    • 5.6.x 版本(低於 5.6.4)
    • 更早且不受支援的版本

緩解措施

在更新到最新版本之前,請更新您的 BCryptPasswordEncoder 以使用較低的迭代次數。在撰寫本文時,OWASP 建議使用 10 的值。

然後,使用上述引用的緩解工具來更新您的密碼雜湊。

更新密碼雜湊後,您應按照以下方式更新版本:5.5.x 使用者應升級到 5.5.7,5.6.x 使用者應升級到 5.6.4,或使用者應升級到 5.7.0。升級 Spring Security 相依性後,您應建議受影響的使用者變更其密碼。

緩解工具中也可以找到緩解措施常見問題集。

已修正此問題的版本包括

  • Spring Security
    • 5.5.7
    • 5.6.4
    • 5.7.0

致謝

Eyal Kaspi 發現並負責地報告了此問題。

參考資料

歷史記錄

  • 2022-05-17:發布初始漏洞報告。

領先一步

VMware 提供培訓和認證,以加速您的進度。

了解更多

取得支援

Tanzu Spring 在一個簡單的訂閱中提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位檔。

了解更多

即將到來的活動

查看 Spring 社群中所有即將到來的活動。

檢視全部