|
|
51CTO旗下网站
|
|
移动端

Tomcat爆出安全漏洞!Spring Cloud/Boot框架多个版本受影响

6月25日, Apache 官方安全团队通过邮件公开报告了一个高危漏洞,邮件中介绍了 HTTP/2 拒绝服务漏洞的细节及解决方案。

作者:程序员狗哥来源:今日头条|2020-07-09 15:13

01 事件背景

6月25日, Apache 官方安全团队通过邮件公开报告了一个高危漏洞,邮件中介绍了 HTTP/2 拒绝服务漏洞的细节及解决方案。如下图所示:

漏洞详情链接:

  • http://mail-archives.apache.org/mod_mbox/www-announce/202006.mbox/%3Cfd56bc1d-1219-605b-99c7-946bf7bd8ad4@apache.org%3E
Tomcat爆出安全漏洞!Spring Cloud/Boot框架多个版本受影响

翻译

  • 漏洞名称:Apache Tomcat HTTP/2 拒绝服务漏洞
  • 漏洞编号:CVE-2020-11996
  • 严重程度: 重要
  • 软件提供商: Apache 软件基金会

受影响的版本:

  • Apache Tomcat 10.0.0-M1 ~ 10.0.0-M5
  • Apache Tomcat 9.0.0.M1 ~ 9.0.35
  • Apache Tomcat 8.5.0 ~ 8.5.55

漏洞描述:一个特别制作的 HTTP/2 请求序列,在短短数秒内能导致 CPU 满负载率,如果有足够数量多的此类请求连接(HTTP/2)并发放在服务器上,服务器可能会失去响应。

如果条件允许,可以通过升级到Tomcat新版本来解决漏洞。下面为受影响版本对应的安全版本:

  • Apache Tomcat 10.0.0-M6+
  • Apache Tomcat 9.0.36+
  • Apache Tomcat 8.5.56+

02 Spring Cloud / Boot 框架影响

Apache Tomcat HTTP/2 拒绝服务漏洞也给Spring Cloud / Boot 框架带来了一定的影响。下面是所有受影响的版本列表,大家可以查看并对照下自己的代码,看看是否受到影响。

Spring Cloud Edgware / Spring Boot 1.5.x

  • Spring Cloud [Edgware.RELEASE - Edgware.SR6] 版本受到影响。
  • Spring Boot [1.5.0.RELEASE - 1.5.22.RELEASE] 版本受到影响。

Spring Cloud Finchley / Spring Boot 2.0.x

  • Spring Cloud [Finchley.RELEASE - Finchley.SR4] 版本受到影响。
  • Spring Boot [2.0.0.RELEASE - 2.0.9.RELEASE] 版本受到影响。

Spring Cloud Greenwich / Spring Boot 2.1.x

  • Spring Cloud [Greenwich.RELEASE - Greenwich.SR6] 版本受到影响。
  • Spring Boot [2.1.0.RELEASE - 2.1.14.RELEASE] 版本受到影响。
  • Spring Boot [2.1.15.RELEASE] 版本已修复。

Spring Cloud Hoxton / Spring Boot 2.2.x

  • Spring Cloud [Hoxton.RELEASE - Hoxton.SR6] 版本受到影响。
  • Spring Boot [2.2.0.RELEASE - 2.2.7.RELEASE] 版本受到影响。
  • Spring Boot [2.2.8.RELEASE] 版本已修复。

Spring Boot 2.3.x

  • Spring Boot [2.3.0.RELEASE] 版本受到影响。
  • Spring Boot [2.3.1.RELEASE] 版本已修复。

03 升级方案

为了避免上述漏洞,现有两种升级方案:

直接升级Spring Boot版本。

手动升级Tomcat版本。

升级 Spring Cloud Edgware / Spring Boot 1.5.x

Edgware无法通过升级Spring Boot版本解决问题。=

  1. <properties> 
  2.     <tomcat-embed.version>8.5.56</tomcat-embed.version> 
  3. </properties> 
  4.  
  5. <dependencyManagement> 
  6.     <dependencies> 
  7.         <dependency> 
  8.             <groupId>org.apache.tomcat.embed</groupId> 
  9.             <artifactId>tomcat-embed-core</artifactId> 
  10.             <version>${tomcat-embed.version}</version> 
  11.         </dependency> 
  12.         <dependency> 
  13.             <groupId>org.apache.tomcat.embed</groupId> 
  14.             <artifactId>tomcat-embed-el</artifactId> 
  15.             <version>${tomcat-embed.version}</version> 
  16.         </dependency> 
  17.         <dependency> 
  18.             <groupId>org.apache.tomcat.embed</groupId> 
  19.             <artifactId>tomcat-embed-websocket</artifactId> 
  20.             <version>${tomcat-embed.version}</version> 
  21.         </dependency> 
  22.         <dependency> 
  23.             <groupId>org.apache.tomcat</groupId> 
  24.             <artifactId>tomcat-annotations-api</artifactId> 
  25.             <version>${tomcat-embed.version}</version> 
  26.         </dependency> 
  27.     </dependencies> 
  28. </dependencyManagement> 

升级Spring Cloud Finchley / Spring Boot 2.0.x

Finchley无法通过升级Spring Boot版本解决问题。

  1. <properties> 
  2.     <tomcat-embed.version>8.5.56</tomcat-embed.version> 
  3. </properties> 
  4.  
  5. <dependencyManagement> 
  6.     <dependencies> 
  7.         <dependency> 
  8.             <groupId>org.apache.tomcat.embed</groupId> 
  9.             <artifactId>tomcat-embed-core</artifactId> 
  10.             <version>${tomcat-embed.version}</version> 
  11.         </dependency> 
  12.         <dependency> 
  13.             <groupId>org.apache.tomcat.embed</groupId> 
  14.             <artifactId>tomcat-embed-el</artifactId> 
  15.             <version>${tomcat-embed.version}</version> 
  16.         </dependency> 
  17.         <dependency> 
  18.             <groupId>org.apache.tomcat.embed</groupId> 
  19.             <artifactId>tomcat-embed-websocket</artifactId> 
  20.             <version>${tomcat-embed.version}</version> 
  21.         </dependency> 
  22.     </dependencies> 
  23. </dependencyManagement> 

升级Spring Cloud Greenwich / Spring Boot 2.1.x

1. 升级Spring Boot

  1. <parent> 
  2.     <groupId>org.springframework.boot</groupId> 
  3.     <artifactId>spring-boot-starter-parent</artifactId> 
  4.     <version>2.1.15.RELEASE</version> 
  5. </parent> 

2. 升级Tomcat

  1. <properties> 
  2.     <tomcat-embed.version>9.0.36</tomcat-embed.version> 
  3. </properties> 
  4.  
  5. <dependencyManagement> 
  6.     <dependencies> 
  7.         <dependency> 
  8.             <groupId>org.apache.tomcat.embed</groupId> 
  9.             <artifactId>tomcat-embed-core</artifactId> 
  10.             <version>${tomcat-embed.version}</version> 
  11.         </dependency> 
  12.         <dependency> 
  13.             <groupId>org.apache.tomcat.embed</groupId> 
  14.             <artifactId>tomcat-embed-el</artifactId> 
  15.             <version>${tomcat-embed.version}</version> 
  16.         </dependency> 
  17.         <dependency> 
  18.             <groupId>org.apache.tomcat.embed</groupId> 
  19.             <artifactId>tomcat-embed-websocket</artifactId> 
  20.             <version>${tomcat-embed.version}</version> 
  21.         </dependency> 
  22.     </dependencies> 
  23. </dependencyManagement> 

升级Spring Cloud Hoxton / Spring Boot 2.2.x

1. 升级Spring Boot

  1. <parent> 
  2.     <groupId>org.springframework.boot</groupId> 
  3.     <artifactId>spring-boot-starter-parent</artifactId> 
  4.     <version>2.2.8.RELEASE</version> 
  5. </parent> 

2. 升级Tomcat

  1. <properties> 
  2.     <tomcat-embed.version>9.0.36</tomcat-embed.version> 
  3. </properties> 
  4.  
  5. <dependencyManagement> 
  6.     <dependencies> 
  7.         <dependency> 
  8.             <groupId>org.apache.tomcat.embed</groupId> 
  9.             <artifactId>tomcat-embed-core</artifactId> 
  10.             <version>${tomcat-embed.version}</version> 
  11.         </dependency> 
  12.         <dependency> 
  13.             <groupId>org.apache.tomcat.embed</groupId> 
  14.             <artifactId>tomcat-embed-el</artifactId> 
  15.             <version>${tomcat-embed.version}</version> 
  16.         </dependency> 
  17.         <dependency> 
  18.             <groupId>org.apache.tomcat.embed</groupId> 
  19.             <artifactId>tomcat-embed-websocket</artifactId> 
  20.             <version>${tomcat-embed.version}</version> 
  21.         </dependency> 
  22.     </dependencies> 
  23. </dependencyManagement> 

升级Spring Boot 2.3.x

1. 升级Spring Boot

  1. <parent> 
  2.     <groupId>org.springframework.boot</groupId> 
  3.     <artifactId>spring-boot-starter-parent</artifactId> 
  4.     <version>2.3.1.RELEASE</version> 
  5. </parent> 

2. 升级Tomcat

  1. <properties> 
  2.     <tomcat-embed.version>9.0.36</tomcat-embed.version> 
  3. </properties> 
  4.  
  5. <dependencyManagement> 
  6.     <dependencies> 
  7.         <dependency> 
  8.             <groupId>org.apache.tomcat.embed</groupId> 
  9.             <artifactId>tomcat-embed-core</artifactId> 
  10.             <version>${tomcat-embed.version}</version> 
  11.         </dependency> 
  12.         <dependency> 
  13.             <groupId>org.apache.tomcat.embed</groupId> 
  14.             <artifactId>tomcat-embed-websocket</artifactId> 
  15.             <version>${tomcat-embed.version}</version> 
  16.         </dependency>    </dependencies></dependencyManagement> 

【编辑推荐】

  1. apache/apache tomcat目录遍历漏洞的防范
【责任编辑:未丽燕 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

大数据安全运维实战

大数据安全运维实战

CDH+Ambari
共20章 | 大数据陈浩

86人订阅学习

实操案例:Jenkins持续交付和持续部署

实操案例:Jenkins持续交付和持续部署

微服务架构下的自动化部署
共18章 | freshman411

174人订阅学习

思科交换网络安全指南

思科交换网络安全指南

安全才能无忧
共5章 | 思科小牛

107人订阅学习

视频课程+更多

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微