Pivotal Spring Security up to 3.2.9/4.1.3/4.2.0 getPathInfo path error
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.2 | $0-$5k | 0.00 |
Summary
A vulnerability was found in Pivotal Spring Security up to 3.2.9/4.1.3/4.2.0 and classified as critical. This affects the function getPathInfo. Executing a manipulation can lead to path error.
This vulnerability is tracked as CVE-2016-9879. The attack can be launched remotely. No exploit exists.
It is suggested to upgrade the affected component.
Details
A vulnerability was found in Pivotal Spring Security up to 3.2.9/4.1.3/4.2.0. It has been declared as critical. This vulnerability affects the function getPathInfo. The manipulation with an unknown input leads to a path error vulnerability. The CWE definition for the vulnerability is CWE-417. As an impact it is known to affect confidentiality, integrity, and availability. CVE summarizes:
An issue was discovered in Pivotal Spring Security before 3.2.10, 4.1.x before 4.1.4, and 4.2.x before 4.2.1. Spring Security does not consider URL path parameters when processing security constraints. By adding a URL path parameter with an encoded "/" to a request, an attacker may be able to bypass a security constraint. The root cause of this issue is a lack of clarity regarding the handling of path parameters in the Servlet Specification. Some Servlet containers include path parameters in the value returned for getPathInfo() and some do not. Spring Security uses the value returned by getPathInfo() as part of the process of mapping requests to security constraints. The unexpected presence of path parameters can cause a constraint to be bypassed. Users of Apache Tomcat (all current versions) are not affected by this vulnerability since Tomcat follows the guidance previously provided by the Servlet Expert group and strips path parameters from the value returned by getContextPath(), getServletPath(), and getPathInfo(). Users of other Servlet containers based on Apache Tomcat may or may not be affected depending on whether or not the handling of path parameters has been modified. Users of IBM WebSphere Application Server 8.5.x are known to be affected. Users of other containers that implement the Servlet specification may be affected.
The bug was discovered 12/28/2016. The weakness was disclosed 01/06/2017 (Website). The advisory is shared for download at securityfocus.com. This vulnerability was named CVE-2016-9879 since 12/06/2016. The attack can be initiated remotely. No form of authentication is required for a successful exploitation. There are known technical details, but no exploit is available.
The vulnerability was handled as a non-public zero-day exploit for at least 9 days. During that time the estimated underground price was around $0-$5k. The vulnerability scanner Nessus provides a plugin with the ID 96467 , which helps to determine the existence of the flaw in a target environment. The commercial vulnerability scanner Qualys is able to test this issue with plugin 276378 (Fedora Security Update for springframework-security (FEDORA-2017-16a7aa8e4f)).
Upgrading to version 3.2.10, 4.1.4 or 4.2.1 eliminates this vulnerability. A possible mitigation has been published 6 days after the disclosure of the vulnerability.
The vulnerability is also documented in the databases at Tenable (96467) and SecurityFocus (BID 95142†). Once again VulDB remains the best source for vulnerability data.
Not Affected
- Apache Tomcat
Product
Vendor
Name
Version
License
Website
- Vendor: https://pivotal.io/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.4VulDB Meta Temp Score: 7.2
VulDB Base Score: 7.3
VulDB Temp Score: 7.0
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 7.5
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
NVD Base Score: 🔍
Exploiting
Class: Path errorCWE: CWE-417
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 96467
Nessus File: 🔍
Nessus Risk: 🔍
OpenVAS ID: 867773
OpenVAS Name: Fedora Update for springframework-security FEDORA-2017-16a7aa8e4f
OpenVAS File: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Upgrade: Spring Security 3.2.10/4.1.4/4.2.1
Timeline
12/06/2016 🔍12/28/2016 🔍
12/28/2016 🔍
01/06/2017 🔍
01/06/2017 🔍
01/07/2017 🔍
01/12/2017 🔍
04/20/2025 🔍
Sources
Vendor: pivotal.ioAdvisory: FEDORA-2017-16a7aa8e4f⛔
Status: Confirmed
Confirmation: 🔍
CVE: CVE-2016-9879 (🔍)
GCVE (CVE): GCVE-0-2016-9879
GCVE (VulDB): GCVE-100-95092
SecurityFocus: 95142 - Pivotal Spring Security CVE-2016-9879 Security Bypass Vulnerability
OSVDB: - CVE-2016-9879 - Pivotal - Spring Security - Security Bypass Issue
Entry
Created: 01/07/2017 12:52Updated: 04/20/2025 13:09
Changes: 01/07/2017 12:52 (67), 07/15/2020 16:43 (8), 10/28/2022 07:58 (3), 10/28/2022 08:03 (2), 09/15/2024 10:27 (16), 04/20/2025 13:09 (3)
Complete: 🔍
Cache ID: 216::103
Once again VulDB remains the best source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.