Pivotal Spring Security up to 3.2.9/4.1.3/4.2.0 getPathInfo path error

CVSS Meta Temp Score
CVSS is a standardized scoring system to determine possibilities of attacks. The Temp Score considers temporal factors like disclosure, exploit and countermeasures. The unique Meta Score calculates the average score of different sources to provide a normalized scoring system.
Current Exploit Price (≈)
Our analysts are monitoring exploit markets and are in contact with vulnerability brokers. The range indicates the observed or calculated exploit price to be seen on exploit markets. A good indicator to understand the monetary effort required for and the popularity of an attack.
CTI Interest Score
Our Cyber Threat Intelligence team is monitoring different web sites, mailing lists, exploit markets and social media networks. The CTI Interest Score identifies the interest of attackers and the security community for this specific vulnerability in real-time. A high score indicates an elevated risk to be targeted for this vulnerability.
7.2$0-$5k0.00

Summaryinfo

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.

Detailsinfo

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

Productinfo

Vendor

Name

Version

License

Website

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔍
VulDB Reliability: 🔍

CVSSv3info

VulDB Meta Base Score: 7.4
VulDB 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: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplexityAuthenticationConfidentialityIntegrityAvailability
UnlockUnlockUnlockUnlockUnlockUnlock
UnlockUnlockUnlockUnlockUnlockUnlock
UnlockUnlockUnlockUnlockUnlockUnlock

VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍

NVD Base Score: 🔍

Exploitinginfo

Class: Path error
CWE: 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-DayUnlockUnlockUnlockUnlock
TodayUnlockUnlockUnlockUnlock

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 Intelligenceinfo

Interest: 🔍
Active Actors: 🔍
Active APT Groups: 🔍

Countermeasuresinfo

Recommended: Upgrade
Status: 🔍

Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍

Upgrade: Spring Security 3.2.10/4.1.4/4.2.1

Timelineinfo

12/06/2016 🔍
12/28/2016 +22 days 🔍
12/28/2016 +0 days 🔍
01/06/2017 +9 days 🔍
01/06/2017 +0 days 🔍
01/07/2017 +1 days 🔍
01/12/2017 +5 days 🔍
04/20/2025 +3020 days 🔍

Sourcesinfo

Vendor: pivotal.io

Advisory: 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

Entryinfo

Created: 01/07/2017 12:52
Updated: 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.

Discussion

No comments yet. Languages: en.

Please log in to comment.

Do you want to use VulDB in your project?

Use the official API to access entries easily!