大工网安告[2024]033
一、 情况分析
Spring WebFlux是Spring框架中的一个响应式编程模型,它基于Reactor库,提供了非阻塞的事件驱动架构,适合构建异步的、可扩展的Web应用程序。它支持ReactiveStreams规范,允许在高并发场景下更高效地处理数据流,特别是在I/O密集型和高吞吐量的应用中表现出色。
近日,官方修复Spring Security静态资源权限绕过漏洞(CVE-2024-38821),Spring WebFlux应用程序在静态资源上使用Spring Security授权规则时,由于解析差异可能导致权限绕过,未经授权的攻击者可以通过此漏洞绕过原本的身份认证机制,从而未授权访问这些资源,造成敏感数据泄露等后果。目前该漏洞技术细节与EXP已在互联网上公开,鉴于该漏洞影响范围较大,建议客户尽快做好自查及防护。
威胁类型:身份认证绕过。
技术类型:数据验证不恰当。
利用条件:必须是WebFlux应用程序
必须使用Spring security的静态资源支持
必须对静态资源支持应用非permitAll授权规则。
危害描述:具有Spring Security授权规则的Spring WebFlux应用程序在某些情况下可以被绕过。
目前,已成功复现Spring Security 静态资源权限绕过漏洞(CVE-2024-38821),截图如下,图一为正常访问时重定向到其他页面的情况,图二则利用漏洞绕过认证访问到目标文件:


二、 影响版本
5.7.0 <= Spring Security <= 5.7.12
5.8.0 <= Spring Security <= 5.8.14
6.0.0 <= Spring Security <= 6.0.12
6.1.0 <= Spring Security <= 6.1.10
6.2.0 <= Spring Security <= 6.2.6
6.3.0 <= Spring Security <= 6.3.3
较旧的、不受支持的版本也受到影响。
三、 处置建议
目前官方已发布安全更新,请及时升级至最新版本:
Spring Security 5.7.* >= 5.7.13(仅限企业支持)
Spring Security 5.8.* >= 5.8.15(仅限企业支持)
Spring Security 6.0.* >= 6.0.13(仅限企业支持)
Spring Security 6.1.* >= 6.1.11(仅限企业支持)
Spring Security 6.2.* >= 6.2.7
Spring Security 6.3.* >= 6.3.4
官方下载地址:
https://github.com/spring-projects/spring-security/tags