Spring Security 安全公告
此頁面列出 Spring 公告。
CVE-2022-31692:在 Spring Security 中,授權規則可能會透過轉發或包含分派器類型來繞過
CVE-2022-31684:Reactor Netty HTTP 伺服器可能會記錄請求標頭
CVE-2022-31679:Spring Data REST 公開的資源可能發生非預期的資料洩露
CVE-2022-22980:Spring Data MongoDB SpEL 表達式注入漏洞,透過註解的儲存庫查詢方法
CVE-2022-22979:Spring Cloud Function 阻斷服務漏洞
CVE-2022-22976:BCrypt 跳過工作因子為 31 的 salt 輪次
說明
Spring Security 版本 5.5.x(在 5.5.7 之前)、5.6.x(在 5.6.4 之前)以及更早的不受支援版本包含整數溢位漏洞。當使用最大工作因子 (31) 的 BCrypt 類別時,由於整數溢位錯誤,編碼器不會執行任何 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 發現並負責任地回報。
參考資料
CVE-2022-22978:RegexRequestMatcher 中的授權繞過
說明
在 Spring Security 版本 5.4.10、5.5.6 和 5.6.3 以及更舊的不受支援版本中,RegexRequestMatcher 很容易被錯誤配置,以至於在某些 servlet 容器上被繞過。
在正規表示式中使用 `.` 的 RegexRequestMatcher 應用程式可能容易受到授權繞過的影響。
受影響的 Spring 產品和版本
- Spring Security
- 5.4.x(在 5.4.11 之前)
- 5.5.x(在 5.5.7 之前)
- 5.6.x(在 5.6.4 之前)
- 更早的不受支援版本
緩解措施
使用者應更新到包含修復程式的版本。5.5.x 使用者應升級到 5.5.7 或更高版本。5.6.x 使用者應升級到 5.6.4 或更高版本。已修復此問題的版本包括
- Spring Security
- 5.4.11+
- 5.5.7+
- 5.6.4+
- …
CVE-2022-22970:Spring Framework 阻斷服務,透過資料繫結到 MultipartFile 或 Servlet Part
CVE-2022-22971:Spring Framework 阻斷服務,透過 WebSocket 上的 STOMP
回報漏洞
若要回報 Spring 作品組合中專案的安全漏洞,請參閱安全政策