【漏洞预警】Spring Security漏洞


Spring Security 路径匹配漏洞


漏洞描述:
Spring Security 是一套为基于 Spring 的应用程序提供说明性安全保护的安全框架。Spring WebFlux 是一种响应式编程模型来构建的Web应用程序。在 Spring Security 中,通配符字符 ** 可匹配路径分隔符 "/"。而在 Spring WebFlux 不可匹配路径分隔符。

当 Spring WebFlux 使用 Spring Security 时,如果Spring Security使用 ** 来匹配 URL 路径,导致模式匹配的不一致。攻击者通过构造路径绕过 Spring Security 的安全检查,直接访问应用程序中资源。

影响范围:
org.springframework.security:spring-security-web@[5.6.0, 5.6.12)

org.springframework.security:spring-security-web@[5.7.0, 5.7.10)

org.springframework.security:spring-security-web@[5.8.0, 5.8.5)

org.springframework.security:spring-security-web@[6.0.0, 6.0.5)

org.springframework.security:spring-security-web@[6.1.0, 6.1.2)


修复方案:
Spring Security配置中禁止使用**匹配URL

参考链接:
https://spring.io/security/cve-2023-34034

https://github.com/spring-projects/spring-security/issues/13460

https://github.com/spring-projects/spring-security/commit/7813a9ba26e53fe54e4d2ec6eb076126e8550780



Spring Security鉴权规则错误配置风险

漏洞描述:

Spring Security 是一套为基于Spring的应用程序提供说明性安全保护的安全框架。
在 Spring Security 受影响的版本中,由于 Spring Security 的授权规则会应用于整个应用程序上下文,当应用程序中包含多个servlet,并且其中一个为DispatcherServlet时 ,使用 requestMatchers(String) 方法错误地将非 Spring MVC 的端点添加到授权规则中,攻击者可以发送请求到这个的端点,从而绕过授权规则获得访问权限。


影响范围:

org.springframework.security:spring-security-config [6.0.0, 6.0.5)

org.springframework.security:spring-security-config [6.1.0, 6.1.2)

org.springframework.security:spring-security-config [5.8.0, 5.8.5)

修复方案:

将组件 org.springframework.security:spring-security-config 升级至 6.0.5 及以上版本

将组件 org.springframework.security:spring-security-config 升级至 6.1.2 及以上版本

将使用requestMatchers(String)指向的非 Spring MVC 端点,改为requestMatchers(new AntPathRequestMatcher("/endpoint"))


参考链接:

https://spring.io/security/cve-2023-34035

https://github.com/spring-projects/spring-security/commit/df239b6448ccf138b0c95b5575a88f33ac35cd9a

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。查看原文

为您推荐