Spring Security 安全公告

CVE-2018-15756:通过范围请求进行拒绝服务攻击

| 2018年10月16日 | CVE-2018-15756

描述

Spring Framework 5.1 版、5.0.x 版本(早于 5.0.10)、4.3.x 版本(早于 4.3.20)以及 4.2.x 分支上较旧的、不受支持的版本,在通过 ResourceHttpRequestHandler 提供静态资源服务时,或从 5.0 版开始,当带注释的控制器返回 org.springframework.core.io.Resource 时,都支持范围请求。恶意用户(或攻击者)可以使用包含大量范围或包含重叠的宽范围(或两者兼而有之)的范围标头,发起拒绝服务攻击。

此漏洞影响依赖于 spring-webmvc 或 spring-webflux 的应用程序。此类应用程序还必须注册以提供静态资源服务(例如 JS、CSS、图像等),或具有返回 org.springframework.core.io.Resource 的带注释的控制器。

依赖于 spring-boot-starter-web 或 spring-boot-starter-webflux 的 Spring Boot 应用程序可以开箱即用地提供静态资源服务,因此也容易受到攻击。

受影响的 Spring 产品和版本

  • Spring Framework 5.1
  • Spring Framework 5.0.0 至 5.0.9
  • Spring Framework 4.3 至 4.3.19
  • 更旧的、不受支持的版本(可追溯到 4.2)也受影响

缓解措施

受影响版本的使用者应应用以下缓解措施

  • 5.1 用户应升级到 5.1.1
  • 5.0.x 用户应升级到 5.0.10
  • 4.3.x 用户应升级到 4.3.20
  • 4.2.x 用户应升级到受支持的分支。

无需采取其他缓解措施。

评估影响时请注意以下事项

  • 4.2 版引入了对范围请求的支持。因此,4.2 版之前的版本不受此问题的影响。
  • 5.0 版引入了从带注释的控制器返回 org.springfamework.core.io.Resource 的支持。因此,5.0 版之前的版本只能通过注册来提供静态资源服务而受到影响。

致谢

Aruba Threat Labs 的 Nicholas Starke 发现了此问题并负责任地报告了它。

历史

2018-10-16:发布初始漏洞报告。

领先一步

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

了解更多

获取支持

Tanzu Spring 在一个简单的订阅中提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

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

查看全部