Springboot 修改Tomcat版本 修复Tomcat CVE-2024-21733 漏洞

Apache Tomcat是一个流行的开源Web服务器和Java Servlet容器。Coyote是Tomcat的连接器组件,是Tomcat服务器提供的供客户端访问的外部接口,客户端通过Coyote与服务器建立链接、发送请求并且接收响应。

2024年1月22日,启明星辰VSRC监测到Apache Tomcat中修复了一个信息泄露漏洞(CVE-2024-21733)。

Apache Tomcat版本 9.0.0-M11 - 9.0.43、8.5.7 - 8.5.63中存在信息泄露漏洞,由于coyote/http11/Http11InputBuffer.java中在抛出CloseNowException异常后没有重置缓冲区位置和限制,威胁者可发送不完整的POST请求触发错误响应,从而可能导致获取其他用户先前请求的数据。

二、影响范围

Apache Tomcat 9.0.0-M11 - 9.0.43

Apache Tomcat 8.5.7 - 8.5.63

三、安全措施

3.1 升级版本

目前该漏洞已经修复,受影响用户可升级到以下版本:

Apache Tomcat >= 9.0.44

Apache Tomcat >= 8.5.64

四、修改Springboot 内置Tomcat版本

4.1 查看Springboot内置版本

可以在idea 项目里pom.xml 右键Maven-->show effective POM,搜索查看内置的Tomcat版本。

也可以在mvnrepository.com 查看对应对应Springboot starter parent 版本,比如2.0.4.RELEASE

https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent/2.0.4.RELEASE

在【Managed Dependencies (679)】里,搜索Tomcat,可以看到版本。

4.2 修改Springboot Tomcat版本

在pom.xml文件的<properties></properties>里新增<tomcat.version>9.0.44</tomcat.version>。

4.3 验证Springboot Tomcat版本

启动Springboot 项目,然后看启动日志,里面版本是目标版本,修改成功。

相关推荐
2601_949814491 天前
使用Kubernetes部署Spring Boot项目
spring boot·容器·kubernetes
Soofjan1 天前
Go select 源码笔记:selectgo、scase 与 pollorder / lockorder
后端
Soofjan1 天前
Go select 关键字:多路 channel、空 select 与实现要点
后端
羊小猪~~1 天前
Redis学习笔记(数据类型、持久化、事件、管道、发布订阅等)
开发语言·数据库·c++·redis·后端·学习·缓存
孙大川1 天前
Claude Code泄漏的文件分析的Agent Skills等使用
后端
星辰_mya1 天前
数据库运维与数据安全:备份恢复、日志分析与故障排查
运维·数据库·后端·面试·架构师
AskHarries1 天前
48小时打造一个类似 Product Hunt 的网站
后端
太难了啊1 天前
深入理解智能体 Reflection 模式:自我反思与迭代改进的实践指南
人工智能·后端
工作log1 天前
Spring Boot JAR包加密防反编译:ClassFinal 实战指南
spring boot·后端·jar