CVE-2024-22257:Spring Security 中可能存在访问控制失效,当直接使用 AuthenticatedVoter 时

| 2024年3月18日 | CVE-2024-22257

描述

在 Spring Security 中,版本 5.7.x 在 5.7.12 之前,5.8.x 在 5.8.11 之前,版本 6.0.x 在 6.0.9 之前,版本 6.1.x 在 6.1.8 之前,版本 6.2.x 在 6.2.3 之前,当应用程序直接使用 AuthenticatedVoter#vote 并传入一个 null 的 Authentication 参数时,可能容易受到访问控制失效的影响。

具体而言,如果发生以下情况,应用程序将是脆弱的:

  • 应用程序直接使用 AuthenticatedVoter 并且传入了一个 null 认证参数,导致错误的 true 返回值。

在以下任何一种情况为真时,应用程序不易受攻击:

  • 应用程序不直接使用 AuthenticatedVoter#vote
  • 应用程序不向 AuthenticatedVoter#vote 传入 null

请注意,AuthenticatedVoter 自 5.8 版本起已弃用,请使用 AuthorizationManager 的实现作为替代。

受影响的 Spring 产品和版本

Spring Security

  • 6.2.0 到 6.2.2
  • 6.1.0 到 6.1.7
  • 6.0.0 到 6.0.9
  • 5.8.0 到 5.8.10
  • 5.7.0 到 5.7.11
  • 较旧的、不受支持的版本也受到影响

缓解措施

受影响版本的用户应升级到相应的修复版本。

受影响版本 修复版本 可用性
5.7.x 5.7.12 OSS
5.8.x 5.8.11 OSS
6.0.x 6.0.10 仅限企业支持
6.1.x 6.1.8 OSS
6.2.x 6.2.3 OSS

致谢

该问题由 pwnull (https://github.com/pwnull) 发现并负责任地报告。

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有