CVE-2018-1271: Directory Traversal with Spring MVC on Windows
Severity
High
Vendor
Spring by Pivotal
Description
Spring Framework versions 5.0 to 5.0.4, 4.3 to 4.3.14, and older unsupported versions allow applications to configure Spring MVC to serve static resources (e.g. CSS, JS, images). When static resources are served from a file system on Windows (as opposed to the classpath, or the ServletContext), a malicious user can send a request using a specially crafted URL that can lead a directory traversal attack.
Affected VMware Products and Versions
Severity is high unless otherwise noted.
- Spring Framework 5.0 to 5.0.4
- Spring Framework 4.3 to 4.3.14
- Older unsupported versions are also affected
Mitigation
Users of affected versions should apply the following mitigation:
- 5.0.x users should upgrade to 5.0.5
- 4.3.x users should upgrade to 4.3.15
- Older versions should upgrade to a supported branch
There are no other mitigation steps necessary.
Note also that this attack does not apply to applications that:
- Do not use Windows.
- Do not serve files from the file system, i.e. not using “file:” for the resource location.
- Use Spring Security with versions patched for CVE-2018-1199.
Credit
This issue was identified and responsibly reported by Orange Tsai (@orange_8361) from DEVCORE.
References
- Example Spring MVC config that enables the serving of static resources. However keep in mind the exploit requires using “file:” for the resource location.
History
2018-04-05: Initial vulnerability report published
2018-04-13: Removed “Use of Tomcat or WildFly” from the list of not affected