Spring 框架是无数 Java 企业应用程序的支柱。它的通用性使 Java 语言适应各种企业设置,同时支持 Groovy 和 Kotlin 作为 Java 虚拟机 (JVM) 上的替代语言。因此,该框架允许创建根据每个应用程序的独特需求量身定制的不同体系结构。为了持续维护强大的安全性,Spring Framework 最近解决了版本 6.0.7 和 5.3.26 中的两个漏洞——CVE-2023-20860 和 CVE-2023-20861。
CVE-2023-20860:使用无前缀双通配符模式的安全绕过
此漏洞的通用漏洞评分系统 (CVSS) 得分为 8.8,涉及安全绕过,当在带有 mvcRequestMatcher 的 Spring Security 配置中使用无前缀的双通配符模式(“**”)时可能会发生这种情况。此配置在 Spring Security 和 Spring MVC 之间创建了模式匹配差异,可能允许未经授权的访问。
该问题影响 Spring Framework 版本 6.0.0 到 6.0.6 和 5.3.0 到 5.3.25。5.3 之前的旧版本不受影响。为降低风险,开发人员应更新至 Spring Framework 版本 6.0.7+ 或 5.3.26+。该漏洞是在内部发现的。
CVE-2023-20861:Spring 表达式 DoS 漏洞
此漏洞的 CVSS 评分为 5.3,属于 Spring Expression (SpEL) 拒绝服务 (DoS) 漏洞。在 Spring Framework 版本 6.0.0 到 6.0.6、5.3.0 到 5.3.25、5.2.0.RELEASE 到 5.2.22.RELEASE 以及不受支持的旧版本中,用户可以制作恶意 SpEL 表达式,从而导致 DoS 条件.为缓解此漏洞,受影响版本的用户应更新如下:
6.0.x 用户应升级到 6.0.7+
5.3.x 用户应升级到 5.3.26+
5.2.x 用户应该升级到 5.2.23.RELEASE+
不支持的旧版本用户应更新至6.0.7+ 或5.3.26+。不需要额外的步骤。来自 Code Intelligence 的 Google OSS-Fuzz 团队最初发现并负责任地报告了此漏洞。
通过 Spring 框架更新保持安全
通过将您的 Spring Framework 更新到最新版本,您可以保护您的企业免受这些具有潜在破坏性的漏洞的侵害。