因为tomcat最近发布了:CVE-2024-24549 漏洞,为了安全考虑进行tomcat升级,发现升级到8.5.99或8.5.100之后项目会卡在shiroFilter不动。项目启动不起来。因为尝试了8.5.98可以启动起来,所以在8.5.98的基础上增加了修复CVE-2024-24549漏洞代码。
原漏洞说明:
意思大概是:ApacheTomcat存在拒绝服务漏洞,在处理HTTP/2请求时,如果请求超出了标头的任何配置限制,则关联的 HTTP/2流只有在处理完所有标头后才会重置,攻击者可以使用特制HTTP请求进行DDos攻击。
修复漏洞代码:
引入流程:
- 首先jar包下载下来以后呢。放到自己的maven仓库:
repository\org\apache\tomcat\embed\tomcat-embed-core\8.5.98fixhttp
- 修改pom文件的依赖即可。我这边是这样调整的:
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
<version>8.5.98fixhttp</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>tomcat-annotations-api</artifactId>
<groupId>org.apache.tomcat</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-el</artifactId>
<version>8.5.98</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-websocket</artifactId>
<version>8.5.98</version>
<scope>compile</scope>
</dependency>
tomcat-embed-core 版本调整下就行,其他依赖还是8.5.98
版权归原作者 tomwangyf 所有, 如有侵权,请联系我们删除。