一、漏洞概述
CVE ID | CVE-2023-34034 | 發現時間 | 2023-07-18 |
類 型 | 安全繞過 | 等 級 | 嚴重 |
攻擊向量 | 網路 | 所需許可權 | 無 |
攻擊複雜度 | 低 | 使用者互動 | 無 |
PoC/EXP | 已公開 | 在野利用 | 未知 |
Spring Security是一個功能強大且高度可定製的身份驗證和訪問控制框架。Spring WebFlux是Spring Framework 5.0 中引入的一種響應式Web框架,其核心旨在處理非同步、非阻塞和響應式程式設計範例。
8月10日,啟明星辰VSRC監測到Spring Security安全繞過漏洞(CVE-2023-34034)的細節及PoC在網際網路上公開,該漏洞的CVSS評分最高為9.8。
在Spring WebFlux 應用程序的Spring Security配置中使用無前綴雙萬用字元模式(「**」)會導致Spring Security和Spring WebFlux之間的模式不匹配,可能導致安全繞過,可利用該漏洞在未經身份驗證的情況下訪問特權端點。
二、影響範圍
Spring Security 6.1.0 – 6.1.1
Spring Security 6.0.0 – 6.0.4
Spring Security 5.8.0 – 5.8.4
Spring Security 5.7.0 – 5.7.9
Spring Security 5.6.0 – 5.6.11
注:符合以下條件的應用程序易受該漏洞攻擊:
lWeb應用程序使用Spring WebFlux 框架(使用較舊的Spring MVC框架的應用程序不受影響)。
l該Web 應用程序使用了上述存在漏洞的Spring Security 版本。
lweb應用程序使用 URL 路徑過濾設置 Spring Security訪問規則。URL 路徑模式不以正斜槓字符 (/) 開頭。如果 URL 路徑包含多段萬用字元 ( **),則會增加漏洞的嚴重性。例如,由於該漏洞,「admin/**」規則不會匹配任何 URL,因為它的開頭缺少斜槓/,導致任何人都可以訪問 admin/ 下的所有網頁。
三、安全措施3.1升級版本
目前該漏洞已經修復,受影響使用者可升級到以下版本:
Spring Security >= 6.1.2
Spring Security >= 6.0.5
Spring Security >= 5.8.5
Spring Security >= 5.7.10
Spring Security >= 5.6.12
以上版本需要Spring Framework 版本:
Spring Framework >= 6.0.11
Spring Framework >= 5.3.29
Spring Framework >= 5.2.25
下載連結:
https://spring.io/projects
3.2臨時措施
可在 Spring Security 中使用的任何 URL 過濾器中添加前導正斜槓/來緩解該漏洞,例如,將pathMatchers(“admin/**”)替換為 pathMatchers(“/admin/**”)。
3.3通用建議
定期更新系統補丁,減少系統漏洞,提升伺服器的安全性。
加強系統和網路的訪問控制,修改防火牆策略,關閉非必要的應用埠或服務,減少將危險服務(如SSH、RDP等)暴露到公網,減少攻擊面。
使用企業級安全產品,提升企業的網路安全性能。
加強系統使用者和許可權管理,啟用多因素認證機制和最小許可權原則,使用者和軟體許可權應保持在最低限度。
啟用強密碼策略並設置為定期修改。
3.4參考連結
https://spring.io/security/cve-2023-34034
https://jfrog.com/blog/spring-webflux-cve-2023-34034-write-up-and-proof-of-concept/