升级Spring Boot内嵌Tomcat版本

一、为什么要升级内嵌的Tomcat版本

在产品运行迭代过程中,产品所使用的插件、中间件等经常会被爆出各种各样的漏洞,有些威胁比较大的漏洞是需要及时修复的,最近我们就收到通知需要及时升级tomcat的版本以应对tomcat的新漏洞,当前我们的spring boot版本是2.2.10.RELEASE,其内嵌的tomcat版本是9.0.38,参考下图中本次漏洞(请求走私漏洞 (CVE-2021-33037))的详细信息得知我们需要及时的升级我们的tomcat版本到9.0.46版本以上。漏洞详情参考:https://www.secrss.com/articles/32655

 二、如何升级?

升级spring boot内嵌tomcat还是很容易的,但是项目的目录结构不一样升级的方式可能有一点点差别。

在升级之前建议打开IDE查看一下当前的内嵌tomcat版本是多少,查看方式如下图(随便找了个demo)

若发现版本在漏洞的范围内,则进行升级。

通常,对于内嵌版本的升级我们只需要项目父类的pom.xml文件中,写入我们需要升级的依赖版本号就可以了,如下图:

<properties>
		<tomcat.version>9.0.52</tomcat.version>
</properties>

刷新重新导入配置我们可以看到此时已经升级成功了,版本号变成了最新的9.0.52版本

但是,对于一些项目目录结构可能这样升级并不生效,这时我们需要在父类pom.xml手动导入上图框中的三个依赖即可,导入依赖如下:

<properties>	
		<tomcat.version>9.0.52</tomcat.version>
</properties>

<dependencies>
	        <dependency>
                <groupId>org.apache.tomcat.embed</groupId>
                <artifactId>tomcat-embed-core</artifactId>
                <version>${tomcat.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.tomcat.embed</groupId>
                <artifactId>tomcat-embed-el</artifactId>
                <version>${tomcat.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.tomcat.embed</groupId>
                <artifactId>tomcat-embed-websocket</artifactId>
                <version>${tomcat.version}</version>
            </dependency>
</dependencies>

再次,刷新依赖导入,查看是否已经升级成功:

 

启动项目,日志输出中可以看到如下,说明已经升级成功:

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值