Spring MVC 反射型文件下载漏洞风险通告
发布时间 2020-02-04漏洞编号和级别
CVE编号:CVE-2020-5398,危险级别:高危,CVSS分值:7.5
影响版本
Spring Framework:
5.2.0 to 5.2.2
5.1.0 to 5.1.12
5.0.0 to 5.0.15
漏洞概述
Pivotal Software Spring Framework是美国Pivotal Software公司的一套开源的Java、JavaEE应用程序框架。该框架可帮助开发人员构建高质量的应用。
近日,Pivotal Software(Spring系列)官方发布 Spring Framework 存在 RFD(反射型文件下载漏洞)的漏洞报告,此漏洞为攻击客户端的漏洞,官方将漏洞严重程度评为高。报告指出,当响应中设置了“Content-Disposition”头且filename属性是用户可控时容易受到RFD攻击。攻击应满足以下所有条件才可成功:
1、响应header是通过org.springframework.http.ContentDisposition进行添加的
2、文件名是通过以下方式之一设置的:
ContentDisposition.Builder#filename(String)
ContentDisposition.Builder#filename(String, US_ASCII)
3、filename的值来自用户提供的输入
4、应用程序未清除用户提供的输入
5、攻击者已将下载的响应内容中注入恶意命令
攻击者可利用RFD漏洞,结合社工等方式,让用户下载一个恶意文件并执行,从而危害用户的终端安全。
漏洞验证
暂无POC/EXP。
修复建议
目前厂商已发布升级补丁以修复漏洞,请受影响的用户升级至 Spring Framework 5.2.3,5.1.13 或 5.0.16 版本:https://github.com/spring-projects/spring-framework。
或者采用正确配置:
1、应用程序未设置“ Content-Disposition”响应header。
2、响应header不是通过org.springframework.http.ContentDisposition进行添加的
3、文件名是通过以下方式之一设置的:
ContentDisposition.Builder#filename(String, UTF_8)
ContentDisposition.Builder#filename(String, ISO_8859_1)
4、filename的值不是来自用户提供的输入
5、filename来自用户提供的输入,但由应用程序清除。
参考链接
https://pivotal.io/security/cve-2020-5398


京公网安备11010802024551号