问题
- 升级了gradle,改了文件存储位置,项目需要重新构建下载依赖文件,发现fastjson 1.2.66一直下载不下来
- 一直卡在下载,就想着手动下载下试试,就去了
mvnrepository
网站 - 找到fastjson时,发现了fastjson2
Note: This artifact was moved to: com.alibaba.fastjson2 » fastjson2
mvnrepository
网站提供的最新fastjson版本为2.0.24
,而且看了下,最低可用版本为1.2.83
- 其余更低版本的,有一些风险点漏洞,可能会被利用,对程序或数据造成篡改,具体可以点击进去
- 这里贴其中一个
CVE-2022-25845
,描述翻译为:1.2.83之前的包com.alibaba:fastjson通过绕过默认的autoType关闭限制,容易受到不受信任数据的反序列化攻击,这在某些情况下是可能的。利用此漏洞可以攻击远程服务器。解决方法:如果无法升级,可以启用[safeMode]
解决
- 很多项目持续了很久,一些jar包依赖的版本,可能是很低版本的,这些版本就可能存在一些被发现和公布的漏洞
- 如果是部署在互联网的程序,或者本身对安全要求比较高,建议追踪主要jar包的版本变动,主动使用比较新的稳定版本
- 此次将项目里使用的
com.alibaba:fastjson
全部升级至1.2.83 - 另外,针对现在服务器的高内存配置和jdk的高版本发布,使用
com.alibaba.fastjson2 » fastjson2
也是一个不错的选择,根据官方文档,性能有不小的提升。待其更加稳定时,可以考虑纳入生产项目使用