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 项目,然后看启动日志,里面版本是目标版本,修改成功。