Path to vulnerable library: /Users/alexmaybaum/.m2/repository/org/springframework/security/spring-security-config/4.0.1.RELEASE/spring-security-config-4.0.1.RELEASE.jar
Path to vulnerable library: /Users/alexmaybaum/.m2/repository/org/springframework/security/spring-security-web/4.0.1.RELEASE/spring-security-web-4.0.1.RELEASE.jar
This vulnerability is potentially used
```
com.visualpathit.account.service.UserDetailsServiceImpl (Application)
-> org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter$UserDetailsServiceDelegator (Extension)
-> org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter (Extension)
-> org.springframework.security.config.annotation.web.builders.WebSecurity (Extension)
-> org.springframework.security.config.annotation.web.builders.WebSecurity$IgnoredRequestConfigurer (Extension)
-> ❌ org.springframework.security.config.annotation.web.AbstractRequestMatcherRegistry (Vulnerable Component)
```
Vulnerability Details
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.
:heavy_check_mark: This issue was automatically closed by Mend because the vulnerable library in the specific branch(es) was either marked as ignored or it is no longer part of the Mend inventory.
CVE-2016-5007 - High Severity Vulnerability
Vulnerable Libraries - spring-security-config-4.0.1.RELEASE.jar, spring-webmvc-4.2.1.RELEASE.jar, spring-security-web-4.0.1.RELEASE.jar
spring-security-config-4.0.1.RELEASE.jar
spring-security-config
Library home page: http://spring.io/spring-security
Path to dependency file: /pom.xml
Path to vulnerable library: /Users/alexmaybaum/.m2/repository/org/springframework/security/spring-security-config/4.0.1.RELEASE/spring-security-config-4.0.1.RELEASE.jar
Dependency Hierarchy: - :x: **spring-security-config-4.0.1.RELEASE.jar** (Vulnerable Library)
spring-webmvc-4.2.1.RELEASE.jar
Spring Web MVC
Library home page: https://github.com/spring-projects/spring-framework
Path to dependency file: /pom.xml
Path to vulnerable library: /Users/alexmaybaum/.m2/repository/org/springframework/spring-webmvc/4.2.1.RELEASE/spring-webmvc-4.2.1.RELEASE.jar
Dependency Hierarchy: - :x: **spring-webmvc-4.2.1.RELEASE.jar** (Vulnerable Library)
spring-security-web-4.0.1.RELEASE.jar
spring-security-web
Library home page: http://spring.io/spring-security
Path to dependency file: /pom.xml
Path to vulnerable library: /Users/alexmaybaum/.m2/repository/org/springframework/security/spring-security-web/4.0.1.RELEASE/spring-security-web-4.0.1.RELEASE.jar
Dependency Hierarchy: - :x: **spring-security-web-4.0.1.RELEASE.jar** (Vulnerable Library)
Found in HEAD commit: 9c6901108cf0138889fa46846fabfcb78828d070
Found in base branch: vp-rem
Reachability Analysis(Reachable)
This vulnerability is potentially used ``` com.visualpathit.account.service.UserDetailsServiceImpl (Application) -> org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter$UserDetailsServiceDelegator (Extension) -> org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter (Extension) -> org.springframework.security.config.annotation.web.builders.WebSecurity (Extension) -> org.springframework.security.config.annotation.web.builders.WebSecurity$IgnoredRequestConfigurer (Extension) -> ❌ org.springframework.security.config.annotation.web.AbstractRequestMatcherRegistry (Vulnerable Component) ```
Vulnerability Details
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.
Publish Date: 2017-05-25
URL: CVE-2016-5007
CVSS 3 Score Details (7.5)
Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: Low - Privileges Required: None - User Interaction: None - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: None - Integrity Impact: High - Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: https://pivotal.io/security/cve-2016-5007
Release Date: 2017-05-25
Fix Resolution: org.springframework:spring-webmvc:4.3.0.RELEASE,org.springframework.security:spring-security-web:4.1.1.RELEASE,org.springframework.security:spring-security-config:4.1.1.RELEASE
:rescue_worker_helmet: Automatic Remediation will be attempted for this issue.