- CNNVD編號:未知
- 危害等級: 高危
- CVE編號:CVE-2022-31692
- 漏洞類型: 身份認證繞過
- 威脅類型:未知
- 廠 商:未知
- 漏洞來源:深信服
- 發(fā)布時間:2023-03-20
- 更新時間:2023-03-20
漏洞簡介
漏洞公示
參考網(wǎng)站
受影響實體
補丁
解決方案
如何檢測組件版本
方法一
Windows 系統(tǒng):
全盤搜索 spring-security-bom- ,如果存在 spring-security-bom-{version}.jar ,則用戶可能受影響。
Linux 系統(tǒng):
使用 find / -name ‘spring-security*’ 命令搜索,如果存在 spring-security-bom-{version}.jar 則用戶可能受漏洞影響。
方法二
若為 Maven 項目,可查看項目 pom.xml 中 spring-security-core 和 spring-security-web 的 version 字段值是否位于受影響版本。
<dependencies>
<!-- ... other dependency elements ... --!>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>5.6.9</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>5.6.9</version>
</dependency>
</dependencies>
如果 pom.xml 中沒有寫明 spring-security-core 和 spring-security-web 的版本號,說明使用了 Springboot 內(nèi)置的 Spring Security 組件,可以在此鏈接中查詢 Springboot 對應(yīng)版本內(nèi)置 Spring Security 的版本號。
查詢鏈接:https://github.com/spring-projects/spring-boot/releases
官方修復建議
當前官方已發(fā)布最新版本,建議受影響的用戶及時更新升級到最新版本。鏈接如下:
https://spring.io/projects/spring-security
打補丁/升級方法:
升級 Springboot 至安全版本,或修改 pom.xml 中 spring-security-web 和 spring-security-core 的版本,強制使用安全版本的 Spring Security 依賴。
臨時修復建議
該臨時修復建議存在一定風險,建議用戶可根據(jù)業(yè)務(wù)系統(tǒng)特性審慎選擇采用臨時修復方案:
當 Spring Security ≥ 5.7.0 ,可使用 authorizeRequests().filterSecurityInterceptorOncePerRequest(false) 代替 authorizeHttpRequests().shouldFilterAllDispatcherTypes(true)
當 Spring Security < 5.7.0 時 shouldFilterAllDispatcherTypes 方法不可用,可通過添加 ObjectPostProcessor 緩解此漏洞。
最后保存并重啟服務(wù)即可生效。修復后結(jié)果: