一、基本情况
Spring Security 是一套为基于 Spring 的应用程序提供说明性安全保护的安全框架。
二、漏洞描述
Spring Security 受影响版本可能容易受到通过 FORWARD 或 INCLUDE 调度绕过授权规则的影响。
当满足以下所有条件时,应用程序很容易受到攻击:
·应用程序期望 Spring Security 应用安全性来转发和包含调度程序类型。
·应用程序手动或通过 authorizeHttpRequests()方法使用 AuthorizationFilter。
·应用程序配置 FilterChainProxy 以应用于转发和 / 或包含请求(例如 spring.security.filter.dispatcher-types = request, error, async, forward, include)。
·应用程序将请求转发 / 包含到更高权限的安全端点。
·应用程序通过 authorizeHttpRequests().shouldFilterAllDispatcherTypes(true) 配置 Spring Security 以应用于每个调度程序类型。
如果符合以下任意一项,则应用程序不会受到攻击:
·应用程序不使用 authorizeHttpRequests () 或 AuthorizationFilter。
·该应用程序不转发 / 包含请求。
·应用程序不需要配置 Spring Security 来应用转发或包含调度器类型。
三、影响范围
org.springframework.security:spring-security-web@[5.7.0, 5.7.5)
org.springframework.security:spring-security-web@[5.6.0, 5.6.9)
org.springframework.security:spring-security-config@[5.7.0, 5.7.5)
org.springframework.security:spring-security-config@[5.6.0, 5.6.9)
四、修复建议
将组件 org.springframework.security:spring-security-config 升级至 5.7.5 及以上版本
将组件 org.springframework.security:spring-security-config 升级至 5.6.9 及以上版本
将组件 org.springframework.security:spring-security-web 升级至 5.7.5 及以上版本
将组件 org.springframework.security:spring-security-web 升级至 5.6.9 及以上版本
五、参考链接
开源资讯
https://www.oschina.net/news/215963
https://nvd.nist.gov/vuln/detail/CVE-2022-31692