本頁面列出了 Spring 安全通告。
CVE-2022-22980:透過註解儲存庫查詢方法導致的 Spring Data MongoDB SpEL 表示式注入漏洞
CVE-2022-22979:Spring Cloud Function DoS 漏洞
CVE-2022-22976:BCrypt 在工作因子為 31 時跳過鹽值輪數
說明
Spring Security 5.5.7 之前的 5.5.x 版本、5.6.4 之前的 5.6.x 版本以及更早不受支援的版本存在整數溢位漏洞。當使用最大工作因子 (31) 的 BCrypt 類時,編碼器由於整數溢位錯誤而不執行任何鹽值輪數。
預設設定不受此 CVE 影響。
僅在 BCryptPasswordEncoder 配置了最大工作因子的情形下才會受到影響。由於當前計算機硬體的限制,使用如此高的工作因子在計算上不切實際。
您需要使用工作因子為 31 的 BCrypt 才會受到影響。您可以使用以下緩解工具檢查您的密碼是否受到影響。
受影響的 Spring 產品和版本
- Spring Security
- 5.5.7 之前的 5.5.x
- 5.6.4 之前的 5.6.x
- 更早不受支援的版本
緩解措施
在更新到最新版本之前,請更新您的 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.11 之前的 5.4.x
- 5.5.7 之前的 5.5.x
- 5.6.4 之前的 5.6.x
- 更早不受支援的版本
緩解措施
使用者應更新到包含修復的版本。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:透過將資料繫結到 MultipartFile 或 Servlet Part 導致的 Spring Framework DoS 漏洞
CVE-2022-22971:Spring Framework 透過 STOMP over WebSocket 導致的 DoS 漏洞
CVE-2022-22969:spring-security-oauth2 中的拒絕服務 (DoS) 漏洞
CVE-2022-22968:Spring Framework 資料繫結規則漏洞
CVE-2022-22965:在 JDK 9+ 上透過資料繫結導致的 Spring Framework RCE 漏洞
說明
執行在 JDK 9+ 上的 Spring MVC 或 Spring WebFlux 應用程式可能透過資料繫結容易受到遠端程式碼執行 (RCE) 攻擊。特定的漏洞利用需要應用程式以 WAR 部署方式執行在 Tomcat 上。如果應用程式以 Spring Boot 可執行 JAR 部署(即預設方式),則不受此漏洞利用的影響。然而,此漏洞的性質更為普遍,可能存在其他利用方式。
這是利用的先決條件
- JDK 9 或更高版本
- Apache Tomcat 作為 Servlet 容器
- 打包為 WAR
- spring-webmvc 或 spring-webflux 依賴
受影響的 Spring 產品和版本
- Spring Framework
- 5.3.0 到 5.3.17
- 5.2.0 到 5.2.19
- 更早、不受支援的版本也受到影響
緩解措施
受影響版本的使用者應採用以下緩解措施:5.3.x 使用者應升級到 5.3.18+,5.2.x 使用者應升級到 5.2.20+。無需其他步驟。還有其他…
報告漏洞
要報告 Spring 專案組合中的安全漏洞,請參閱安全政策