本文共 5278 字,大约阅读时间需要 17 分钟。
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
翻译
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
如果条件允许,可以通过升级到Tomcat新版本来解决漏洞。下面为受影响版本对应的安全版本:
02 Spring Cloud / Boot 框架影响
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] 版本受到影响。
Spring Boot [2.0.0.RELEASE - 2.0.9.RELEASE] 版本受到影响。
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] 版本已修复。
03 升级方案
为了避免上述漏洞,现有两种升级方案:
Edgware无法通过升级Spring Boot版本解决问题。
8.5.56 org.apache.tomcat.embed tomcat-embed-core ${tomcat-embed.version} org.apache.tomcat.embed tomcat-embed-el ${tomcat-embed.version} org.apache.tomcat.embed tomcat-embed-websocket ${tomcat-embed.version} org.apache.tomcat tomcat-annotations-api ${tomcat-embed.version}
Finchley无法通过升级Spring Boot版本解决问题。
8.5.56 org.apache.tomcat.embed tomcat-embed-core ${tomcat-embed.version} org.apache.tomcat.embed tomcat-embed-el ${tomcat-embed.version} org.apache.tomcat.embed tomcat-embed-websocket ${tomcat-embed.version}
1. 升级Spring Boot
org.springframework.boot spring-boot-starter-parent 2.1.15.RELEASE
2. 升级Tomcat
9.0.36 org.apache.tomcat.embed tomcat-embed-core ${tomcat-embed.version} org.apache.tomcat.embed tomcat-embed-el ${tomcat-embed.version} org.apache.tomcat.embed tomcat-embed-websocket ${tomcat-embed.version}
1. 升级Spring Boot
org.springframework.boot spring-boot-starter-parent 2.2.8.RELEASE
2. 升级Tomcat
9.0.36 org.apache.tomcat.embed tomcat-embed-core ${tomcat-embed.version} org.apache.tomcat.embed tomcat-embed-el ${tomcat-embed.version} org.apache.tomcat.embed tomcat-embed-websocket ${tomcat-embed.version}
1. 升级Spring Boot
org.springframework.boot spring-boot-starter-parent 2.3.1.RELEASE
2. 升级Tomcat
9.0.36 org.apache.tomcat.embed tomcat-embed-core ${tomcat-embed.version} org.apache.tomcat.embed tomcat-embed-websocket ${tomcat-embed.version}
转载地址:http://wffvi.baihongyu.com/