jar包依赖漏洞升级思路

背景:接到通告,部分依赖存在漏洞风险,项目需要进行依赖版本升级

依赖名称问题描述风险解决方案
Jackson-databindackson-databind<=2.910.8本存在远程代码执行漏洞服务器沦陷升级Jackson-databind>2.9.10.8版本
XstreamXStream <=1.4.19版本存在反序列漏洞服务器沦陷升级XStream >1.4.19版本

1、整理思路

(1)我们的目标肯定是要将项目的依赖汇聚起来并且能够查询,最好的办法就是打印项目依赖树
(2)依赖树打印出来后,我们就可以直接查询相关的依赖包是包含在哪些依赖里面

2、安装打印插件Maven Dependency Checker

在这里插入图片描述

3、用idea打开项目,在父工程pom目录下,执行maven命令

 D:\code\shop-cloud> mvn dependency:tree

4、查看打印结果,大概如下。可以直接Ctrl+F查询有问题依赖,进而找到具体引用的地方

在这里插入图片描述

5、到maven仓库查找适合版本的依赖,Vulnerabilities项尽可能不要有红色字体,有红色字体的都是有一些问题的版本。

在这里插入图片描述

6、进行依赖升级

这里拿jackson-databind为例,在父工程pom中properties先添加版本号,再添加依赖

<properties>
	<jackson.version>2.11.0</jackson.version>
</properties>

<dependencies>
	<dependency>
	    <groupId>com.fasterxml.jackson.core</groupId>
	    <artifactId>jackson-databind</artifactId>
	    <version>${jackson.version}</version>
	</dependency>
	<dependency>
	    <groupId>com.fasterxml.jackson.core</groupId>
	    <artifactId>jackson-core</artifactId>
	    <version>${jackson.version}</version>
	</dependency>
</dependencies>           

7、检查当前项目实际引用的依赖版本

右键点击项目=》maven=>show Effective POM
在这里插入图片描述
Ctrl+F 搜索依赖检查,正确无误
在这里插入图片描述

8、还差很重要的两步,以下两个步骤都通过,则升级成功!

(1)编译项目,需要通过
(2)运行项目,需要通过

该流程说明主要是记录一下解决问题的流程,也结合了网上的意见说明,并非唯一手段

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值