CVE-2022-22965

CRITICAL(9.8)KEVLikely Exploited

Spring Framework JDK 9+ Remote Code Execution Vulnerability

Description

CVE-2022-22965, widely known as "Spring4Shell," is a remote code execution vulnerability in the VMware Spring Framework that allows attackers to execute arbitrary code on affected systems through the data binding mechanism. The vulnerability affects Spring MVC and Spring WebFlux applications running on JDK 9 or higher. It was added to CISA's Known Exploited Vulnerabilities (KEV) catalog, confirming active exploitation in the wild. With an EPSS score of 97.4% (99.9th percentile), Spring4Shell represents one of the most critical web application vulnerabilities disclosed in 2022.

KEV Information

Vendor
VMware
Product
Spring Framework
Date Added
April 4, 2022
Due Date
April 25, 2022
Required Action
Apply updates per vendor instructions.

CVSS Score

Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HOpen in Calculator
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality Impact
HIGH
Integrity Impact
HIGH
Availability Impact
HIGH
Exploitability Score
3.9
Impact Score
5.9

CWEs

Affected Products

VendorProductVersion
vmwarespring framework< 5.2.20; >= 5.3.0, < 5.3.18
ciscocx cloud agent< 2.1.0
oraclecommunications cloud native core automated test suite1.9.0; 22.1.0
oraclecommunications cloud native core console1.9.0; 22.1.0
oraclecommunications cloud native core network exposure function22.1.0
oraclecommunications cloud native core network function cloud native environment1.10.0; 22.1.0
oraclecommunications cloud native core network repository function1.15.0; 22.1.0
oraclecommunications cloud native core network slice selection function1.8.0; 1.15.0; 22.1.0
oraclecommunications cloud native core policy1.15.0; 22.1.0
oraclecommunications cloud native core security edge protection proxy1.7.0; 22.1.0
oraclecommunications cloud native core unified data repository1.15.0; 22.1.0
oraclecommunications policy management12.6.0.0.0
oraclefinancial services analytical applications infrastructure8.1.1; 8.1.2.0
oraclefinancial services behavior detection platform8.1.1.0; 8.1.1.1; 8.1.2.0
oraclefinancial services enterprise case management8.1.1.0; 8.1.1.1; 8.1.2.0
oraclemysql enterprise monitor< 8.0.29
oracleproduct lifecycle analytics3.6.1
oracleretail xstore point of service20.0.1; 21.0.0
oraclesd-wan edge9.0; 9.1
siemensoperation scheduler< 2.0.4

Multiple CVSS Assessments

Source: [email protected](Primary)
9.8
CRITICAL

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Source: 134c704f-9b21-4f2e-91b3-4a467353bcc0(Secondary)
9.8
CRITICAL

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

References

Weakness Type

CWE-94: Improper Control of Generation of Code ('Code Injection')

Code injection occurs when an application constructs code using unsanitized input, allowing attackers to inject and execute arbitrary code within the application context. In CVE-2022-22965, the Spring Framework's data binding mechanism can be exploited to modify server-side objects through crafted HTTP requests, ultimately leading to code execution. For more details, see CWE-94.

Impact Analysis

Successful exploitation of Spring4Shell allows remote, unauthenticated attackers to achieve full remote code execution on affected application servers. This can lead to complete server compromise, data theft, deployment of web shells for persistent access, and lateral movement within the organization's network. The Spring Framework is one of the most widely used Java frameworks in enterprise environments, meaning the potential attack surface spans millions of applications across industries. Organizations running Spring-based applications on JDK 9+ with specific deployment configurations face immediate risk of compromise without patching.

Exploit Maturity

CVE-2022-22965 was rapidly weaponized after disclosure in March 2022 and was added to CISA's KEV catalog on April 4, 2022. The EPSS score of 97.4% (99.9th percentile) reflects extremely widespread exploitation activity. Multiple proof-of-concept exploits were released within days of disclosure, and automated exploitation tools quickly followed. Threat actors including botnet operators and cryptocurrency miners rapidly integrated the exploit into their campaigns. The simplicity of exploitation through crafted HTTP requests makes it accessible to attackers of all skill levels.

Remediation

  1. Update the Spring Framework to version 5.3.18 or 5.2.20 or later, and Spring Boot to version 2.6.6 or 2.5.12 or later, as required by CISA's KEV catalog.
  2. If immediate patching is not possible, implement the recommended workaround by setting disallowedFields on WebDataBinder to block the class.module property access path.
  3. Upgrade to JDK 8 as a temporary mitigation if upgrading Spring is not immediately feasible, as the vulnerability requires JDK 9+.
  4. Deploy web application firewall rules to detect and block exploitation attempts targeting Spring data binding patterns.
  5. Audit application servers for indicators of compromise including unauthorized web shell files, unexpected outbound connections, and suspicious process executions.

Technical Details

The vulnerability exploits the Spring Framework's data binding mechanism, which automatically maps HTTP request parameters to Java object properties. On JDK 9 and higher, the Module API introduced a new access path via the class.module.classLoader chain that was not blocked by Spring's existing safeguards. An attacker can send specially crafted HTTP requests that traverse this property chain to modify internal Tomcat logging properties, specifically changing the log pattern to inject JSP code and the log directory to a web-accessible location. This effectively creates a web shell on the server without requiring file upload capabilities. The attack is particularly effective against Spring MVC applications deployed as WAR files on Apache Tomcat.

Frequently Asked Questions

What is CVE-2022-22965 (Spring4Shell)?

CVE-2022-22965, nicknamed "Spring4Shell," is a remote code execution vulnerability in the VMware Spring Framework. It exploits the data binding mechanism to allow unauthenticated attackers to execute arbitrary code on affected servers. The name draws parallels to the Log4Shell vulnerability that preceded it.

What are the prerequisites for exploitation?

The vulnerability requires: Spring Framework 5.3.0 to 5.3.17 or 5.2.0 to 5.2.19, JDK 9 or higher, and typically Apache Tomcat as the application server with the application deployed as a WAR file. Applications using Spring Boot's embedded Tomcat with JAR packaging have additional configuration requirements for exploitation.

Is this as severe as Log4Shell?

While Spring4Shell is a critical vulnerability, its impact is generally considered narrower than Log4Shell because it requires a more specific set of conditions for exploitation. Log4Shell affected virtually any Java application using Log4j, whereas Spring4Shell requires specific Spring, JDK, and deployment configurations.

How can I detect exploitation attempts?

Monitor web server access logs for HTTP requests containing parameter names like class.module.classLoader that attempt to traverse the Java object property chain. WAF and IDS signatures for Spring4Shell are available from major security vendors.

CVSS Score

9.8
CRITICAL(9.8)

EPSS Score

EPSS Score99.68%
EPSS Percentile99.9%

Dates

PublishedApril 1, 2022
Last ModifiedJune 17, 2026
StatusAnalyzed
CVSS Versionv3.1

Need Help With Vulnerability Management?

Our security experts can help you prioritize and remediate vulnerabilities effectively.