All Vulnerability Reports

CVE-2018-11039: Cross Site Tracing (XST) with Spring Framework


Severity

Medium

Vendor

Spring by Pivotal

Description

Spring Framework (versions 5.0.x prior to 5.0.7, versions 4.3.x prior to 4.3.18, and older unsupported versions) allow web applications to change the HTTP request method to any HTTP method (including TRACE) using the HiddenHttpMethodFilter in Spring MVC. If an application has a pre-existing XSS vulnerability, a malicious user (or attacker) can use this filter to escalate to an XST (Cross Site Tracing) attack.

Affected Pivotal Products and Versions

Severity is medium unless otherwise noted.

  • Spring Framework 5.0 to 5.0.6
  • Spring Framework 4.3 to 4.3.17
  • 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.7
  • 4.3.x users should upgrade to 4.3.18
  • Older versions should upgrade to a supported branch

There are no other mitigation steps necessary.

This attack applies to applications that:

  • Use the HiddenHttpMethodFilter (it is enabled by default in Spring Boot)
  • Allow HTTP TRACE requests to be handled by the application server

This attack is not exploitable directly because an attacker would have to make a cross-domain request via HTTP POST, which is forbidden by the Same Origin Policy. This is why a pre-existing XSS (Cross Site Scripting) vulnerability in the web application itself is necessary to enable an escalation to XST.

Credit

This issue was identified and reported by Mariusz Łuciów, Ocado Technology.

History

2018-06-14: Initial vulnerability report published.