导语:近期Apache Tomcat爆出 HTTP/2 拒绝服务漏洞,Spring Cloud/Boot框架的多个版本均已中招。本文整理了受影响的框架版本列表,并列出升级方案,帮助你们避免受到该漏洞的影响。web
6月25日, Apache 官方安全团队经过邮件公开报告了一个高危漏洞,邮件中介绍了 HTTP/2 拒绝服务漏洞的细节及解决方案。以下图所示:spring
漏洞详情连接:mail-archives.apache.org/mod_mbox/ww…apache
翻译api
若是条件容许,能够经过升级到Tomcat新版原本解决漏洞。下面为受影响版本对应的安全版本:tomcat
Apache Tomcat HTTP/2 拒绝服务漏洞也给Spring Cloud / Boot 框架带来了必定的影响。下面是全部受影响的版本列表,你们能够查看并对照下本身的代码,看看是否受到影响。安全
Spring Cloud [Edgware.RELEASE
- Edgware.SR6
] 版本受到影响。服务器
Spring Boot [1.5.0.RELEASE
- 1.5.22.RELEASE
] 版本受到影响。微信
Spring Cloud [Finchley.RELEASE
- Finchley.SR4
] 版本受到影响。websocket
Spring Boot [2.0.0.RELEASE
- 2.0.9.RELEASE
] 版本受到影响。markdown
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.RELEASE
- Hoxton.SR6
] 版本受到影响。
Spring Boot [2.2.0.RELEASE
- 2.2.7.RELEASE
] 版本受到影响。
Spring Boot [2.2.8.RELEASE
] 版本已修复。
Spring Boot [2.3.0.RELEASE
] 版本受到影响。
Spring Boot [2.3.1.RELEASE
] 版本已修复。
目前有两种升级方案能够选择:
Edgware没法经过升级Spring Boot版本解决问题。
<properties> <tomcat-embed.version>8.5.56</tomcat-embed.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-websocket</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-annotations-api</artifactId> <version>${tomcat-embed.version}</version> </dependency> </dependencies> </dependencyManagement> 复制代码
Finchley没法经过升级Spring Boot版本解决问题。
<properties> <tomcat-embed.version>8.5.56</tomcat-embed.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-websocket</artifactId> <version>${tomcat-embed.version}</version> </dependency> </dependencies> </dependencyManagement> 复制代码
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.15.RELEASE</version> </parent> 复制代码
<properties> <tomcat-embed.version>9.0.36</tomcat-embed.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-websocket</artifactId> <version>${tomcat-embed.version}</version> </dependency> </dependencies> </dependencyManagement> 复制代码
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.8.RELEASE</version> </parent> 复制代码
<properties> <tomcat-embed.version>9.0.36</tomcat-embed.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-websocket</artifactId> <version>${tomcat-embed.version}</version> </dependency> </dependencies> </dependencyManagement> 复制代码
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.1.RELEASE</version> </parent> 复制代码
<properties> <tomcat-embed.version>9.0.36</tomcat-embed.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> <version>${tomcat-embed.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-websocket</artifactId> <version>${tomcat-embed.version}</version> </dependency> </dependencies> </dependencyManagement> 复制代码
欢迎扫码关注咱们的微信公众号,期待与你相遇~
公众号不按期有赠书、抽奖(腾讯公仔/T桖)的活动,快来关注咱们并添加中间件小Q妹微信吧