关于Spring Framework反射型文件下载漏洞风险 和 解决

VMware Tanzu发布安全公告,在Spring Framework版本 5.2.0-5.2.8、 5.1.0-5.1.17、 5.0.0-5.0.18、 4.3.0-4.3.28 和较旧的不受支持的版本中,公布了一个存在于Spring Framework中的反射型文件下载(Reflected File Download,RFD)漏洞CVE-2020-5421。
CVE-2020-5421 可通过jsessionid路径参数,绕过防御RFD攻击的保护。先前针对RFD的防护是为应对 CVE-2015-5211 添加的。
攻击者通过向用户发送带有批处理脚本扩展名的URL,使用户下载并执行文件,从而危害用户系统。VMware Tanzu官方已发布修复漏洞的新版本。
Spring Framework是 Java 平台的一个开源全栈应用程序框架和控制反转容器实现,一般被直接称为 Spring。

参考资料 https://tanzu.vmware.com/security/cve-2020-5421

Affected VMware Products and Versions   受影响的版本

Severity is high unless otherwise noted.

  • Spring Framework
    • 5.2.0 to 5.2.8
    • 5.1.0 to 5.1.17
    • 5.0.0 to 5.0.18
    • 4.3.0 to 4.3.28
    • Older, unsupported versions

Mitigation  安全版本

Users of affected versions should apply the following mitigation or upgrade. Releases that have fixed this issue include:

  • Spring Framework
    • 5.2.9
    • 5.1.18
    • 5.0.19
    • 4.3.29

看公告,我们需要将我们spring的核心版本升级到指定的安全版本

我们项目是springboot的,仓库用的maven

先看一下我们的仓库,果然是存在漏洞的版本

 

 然后修改pom

 我们这里的版本需要去maven仓库远程地址去看一下有哪些版本  https://repo.maven.apache.org/maven2/org/springframework/boot/spring-boot-starter-parent/

 截止目前文章发布日期来看,正式版是2.3.9

 

这里比较恶心的是,我们看的这个版本并不知道maven导入的spring核心版本是多少,所以只能试(我没找到对应版本的关系图)

这里我找到的安全版本 5.2.9  对应parent是  2.3.4.RELEASE

 

maven重新clean并install

刷新maven发现spring核心组件的版本都是5.2.9了

 

关于原来是1.几低版本的问题

应用启动类报错

import org.springframework.boot.web.support.SpringBootServletInitializer;

改成

import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

综合来讲下次搭架子的时候直接用安全版本就行,省的换了麻烦

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值