简介
Spring Framework是 Java 平台的一个开源全栈应用程序框架和控制反转容器实现,一般被直接称为 Spring。
漏洞描述
近日,VMware Tanzu发布安全公告,公布了一个存在于Spring Framework中的反射型文件下载(Reflected File Download,RFD)漏洞CVE-2020-5421。CVE-2020-5421 可通过jsessionid路径参数,绕过防御RFD攻击的保护。先前针对RFD的防护是为应对 CVE-2015-5211 添加的。
攻击者通过向用户发送带有批处理脚本扩展名的URL,使用户下载并执行文件,从而危害用户系统。
官方已发布修复了漏洞的新版本。
漏洞评级
高危
影响范围
Spring Framework 5.2.0 – 5.2.8
Spring Framework 5.1.0 – 5.1.17
Spring Framework 5.0.0 – 5.0.18
Spring Framework 4.3.0 – 4.3.28
以及更早版本
修复版本
Spring Framework 5.2.9
Spring Framework 5.1.18
Spring Framework 5.0.19
Spring Framework 4.3.29
官方下载地址
https://github.com/spring-projects/spring-framework/releases
官方漏洞通告
https://tanzu.vmware.com/security/cve-2015-5211
官方缓解措施
- Encode rather than escape JSON responses. This is also an OWASP XSS recommendation. For an example of how to do that with Spring see https://github.com/rwinch/spring-jackson-owasp.
- Configure suffix pattern matching to be turned off or restricted to explicitly registered suffixes only.
- Configure content negotiation with the properties “useJaf” and “ignoreUknownPathExtension” set to false which would result in a 406 response for URLs with unknown extensions. Note however that this may not be an option if URLs are naturally expected to have a dot towards the end.
- Add 'X-Content-Type-Options: nosniff' header to responses. Spring Security 4 does this by default.