7.5high

CVE-2016-5007

Spring Security and Spring Framework may not recognize certain paths that should be protected

Also known as GHSA-8crv-49fr-2h6j

Published 9 y ago · modified 4 mo ago · JSON

CVSS
7.5
v3.0 · NVD
CISA KEV
No
not known exploited
EPSS
2.8%
percentile 87%
Public exploits
0
none known

Summary

Both Spring Security 3.2.x, 4.0.x, 4.1.0 and the Spring Framework 3.2.x, 4.0.x, 4.1.x, 4.2.x rely on URL pattern mappings for authorization and for mapping requests to controllers respectively. Differences in the strictness of the pattern matching mechanisms, for example with regards to space trimming in path segments, can lead Spring Security to not recognize certain paths as not protected that are in fact mapped to Spring MVC controllers that should be protected. The problem is compounded by the fact that the Spring Framework provides richer features with regards to pattern matching as well as by the fact that pattern matching in each Spring Security and the Spring Framework can easily be customized creating additional differences.

Exploit prediction (EPSS)

2.80% probability of exploitation in the next 30 days, higher than 87% of all scored CVEs.

CVSS scores

Assigned byVersionScoreVector
NVD3.07.5CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
NVD2.05.0AV:N/AC:L/Au:N/C:N/I:P/A:N
GitHub3.07.5CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

Affected packages

EcosystemPackageAffectedFixed in
mavenorg.springframework:spring-core
<4.3.1
4.3.1
mavenorg.springframework.security:spring-security-core
<4.1.1
4.1.1

Affected products

  • Pivotal Spring Security
  • Pivotal Spring Framework

Classification

Weakness
  • CWE-264 Permissions, Privileges, and Access Controls
Technology feeds
Spring (RSS, critical only)

References

  • oracle.com /technetwork/security-advisory/cpuapr2018-3678067.html · x_refsource_CONFIRM, x_transferred
  • securityfocus.com /bid/91687 · vdb-entry, x_refsource_BID, x_transferred
  • pivotal.io /security/cve-2016-5007 · x_refsource_CONFIRM, x_transferred
  • oracle.com /technetwork/security-advisory/cpujul2019-5072835.html · x_refsource_MISC, x_transferred
  • nvd.nist.gov /vuln/detail/CVE-2016-5007 · advisory
  • github.com /spring-projects/spring-security/issues/3964 · web
  • github.com /spring-projects/spring-framework/commit/a30ab30e4e9ae021fdda04e9abfc228476b846b5 · web
  • github.com /spring-projects/spring-security/commit/e4c13e3c0ee7f06f59d3b43ca6734215ad7d8974 · web
  • github.com /advisories/GHSA-8crv-49fr-2h6j · advisory

Sources

vulnwire keeps one entry per vulnerability: the CVE id wins, then GHSA; records that alias each other are merged. Machine-readable: JSON.