Skip to content

CVE-2022-22965: Spring4Shell

Code Injection: Is CVE-2022-22965 real, exploitable, or a false positive? Here's the community verdict.

signals

public sources

Exploited in wild
Yes
CISA KEV
Public exploit
Metasploit +1
Metasploit/EDB/PoC
Base severity
9.8 Critical
CVSS
Exploitation prob.
100%
FIRST EPSS
Weakness
CWE-94 · Code Injection
CWE

Confirmed exploited in the wild. Patch this first, regardless of the base score.

public exploits

links to sources — we don’t host code

A working exploit is publicly available from a maintained source. Treat this as higher urgency and verify your exposure.

baseline read

auto · not a community verdict

Real — exploited in the wild

CISA confirms active exploitation. Treat scanner hits as true positives unless your specific version or config is unaffected.

Based on CISA KEV

Confirm or dispute →

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

A Spring MVC or Spring WebFlux application running on JDK 9+ may be vulnerable to remote code execution (RCE) via data binding. The specific exploit requires the application to run on Tomcat as a WAR deployment. If the application is deployed as a Spring Boot executable jar, i.e. the default, it is not vulnerable to the exploit. However, the nature of the vulnerability is more general, and there may be other ways to exploit it.

Published

Embed this verdict
TruePositive verdict for CVE-2022-22965
Markdown
[![TruePositive verdict](https://www.truepositive.app/cve/CVE-2022-22965/badge.svg)](https://www.truepositive.app/cve/CVE-2022-22965)
HTML
<a href="https://www.truepositive.app/cve/CVE-2022-22965"><img src="https://www.truepositive.app/cve/CVE-2022-22965/badge.svg" alt="TruePositive verdict for CVE-2022-22965"></a>

Live badge that updates automatically as the community verdict changes.

Community ground truth

Be the first practitioner to weigh in

So far this is only TruePositive's editorial baseline from public sources. Add your real-world verdict below — it becomes the signal the next person triaging this relies on.

🥇 The first 50 practitioners to contribute earn a Founding Contributor badge.

In your experience, is this finding real and exploitable?

awaiting field verdicts
Real, but not a risk here
Not a real issue

Curated baseline: TruePositive's read from public sources is Real, needs specific conditions — a starting point, not a community verdict.

No account needed. Anonymous verdicts post as an unverified signal. Log in to make yours verified and earn reputation.

Field notes & remediation

Verdicts are the quick signal. Notes are the evidence and fixes behind them.

  • 0
    Field note · TruePositive EditorialCurated

    Real, but it has specific conditions, and many setups are not exploitable by the known method. It is a remote code execution bug in the Spring Framework. It abuses Spring's data binding to write a malicious file (a web shell) onto the server.

    For the well-known exploit to work, several things must all be true. The app runs on JDK 9 or newer, it uses Spring MVC or WebFlux, it is deployed as a traditional WAR on Apache Tomcat, and it uses the affected data binding. A typical Spring Boot app packaged as an executable jar (with embedded Tomcat) is not exploitable by the public exploit. So a scanner flag does not always mean you are exploitable. Check how the app is deployed.

    Do not confuse this with CVE-2022-22963 (Spring Cloud Function SpEL). They are two different bugs that came out around the same time.

    Commonly flagged by: Trivy, Snyk, Dependabot.

  • 0
    Remediation · TruePositive EditorialCurated

    Upgrade Spring Framework to 5.3.18+ or 5.2.20+ (and Spring Boot 2.6.6+ or 2.5.12+). If you cannot upgrade right away, the documented workaround is to block the dangerous fields in a ControllerAdvice (disallow class, module, and classLoader binding). But upgrading is the clean fix. After patching, check web-accessible folders for unexpected .jsp or .class files (dropped web shells).

Add a field note or remediationoptional
Note type

What are you adding?

Markdown supported · minimum 20 characters.

Same weakness: CWE-94 · Code Injection.