Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2022-22965 — Provides a detailed Spring4Shell (CVE-2022-22965) write-up covering root cause, exploitation conditions, impact, CVSS, and mitigation for vulnerable Spring apps. | Kitploit
Tools/GitHubGitHub/0xblackash/cve-2022-22965
Vulnerability AnalysisExploitationWeb Application ExploitationWeb SecurityPenetration TestingLearning & Education
GitHub0xblackash/cve-2022-22965

CVE-2022-22965

Provides a detailed Spring4Shell (CVE-2022-22965) write-up covering root cause, exploitation conditions, impact, CVSS, and mitigation for vulnerable Spring apps.

View Repository
116 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

🚨 CVE-2022-22965 — "Spring4Shell"

1_N9RLjiAn_OcNxyjJD_5ZJQ

CVE Severity CVSS Platform Framework

Critical Remote Code Execution (RCE) vulnerability

Publicly disclosed: March 31, 2022


📖 Table of Contents

  • Overview
  • Affected Components
  • Technical Root Cause
  • Exploitation Conditions
  • Impact
  • Severity & CVSS
  • Mitigation & Patching
  • Timeline
  • Comparison with Log4Shell
  • Summary

🔎 Overview

Spring4Shell is the nickname for , a vulnerability in Spring’s data binding mechanism that could allow attackers to achieve .

CVE-2022-22965
Remote Code Execution (RCE)

It primarily affected applications using:

  • :contentReference[oaicite:1]{index=1}
  • Packaged as a WAR file
  • Deployed on :contentReference[oaicite:2]{index=2}
  • Running on :contentReference[oaicite:3]{index=3} 9 or later

🧠 Technical Root Cause

Spring MVC automatically maps HTTP request parameters to Java object fields — a process called data binding.

Under certain conditions, attackers could:

  1. Manipulate object properties through crafted HTTP parameters
  2. Access internal class loader properties
  3. Modify Tomcat configuration
  4. Write a malicious JSP file (web shell) to disk

This ultimately allowed arbitrary code execution on the server.


⚙️ Exploitation Conditions

spring4shell

Spring4Shell was not universally exploitable. All of the following had to be true:

  • ✔ Running Java 9+
  • ✔ Using vulnerable Spring versions (5.3.0–5.3.17 or 5.2.0–5.2.19)
  • ✔ Deployed as a WAR file
  • ✔ Running on Apache Tomcat
  • ✔ Data binding enabled for request parameters

If packaged as a Spring Boot executable JAR, exploitation was typically not possible.


💥 Potential Impact

If successfully exploited, an attacker could:

  • Upload a web shell (JSP)
  • Execute arbitrary system commands
  • Access sensitive application data
  • Pivot deeper into internal networks
  • Fully compromise the application server

📊 Severity & CVSS

MetricValue
CVE IDCVE-2022-22965
CVSS Score9.8 (Critical)
Attack VectorNetwork
Authentication Required❌ No
User Interaction❌ None
ImpactFull RCE

🛠 Mitigation & Patching

✅ Official Fix

Upgrade to:

  • Spring Framework 5.3.18
  • Spring Framework 5.2.20

Spring Boot versions were also updated accordingly.


🔒 Recommended Hardening

  • Prefer JAR packaging over WAR
  • Upgrade Java runtime
  • Restrict writable directories
  • Disable unnecessary binding fields
  • Monitor for suspicious file creation
  • Deploy Web Application Firewall (WAF)

🗓 Timeline

DateEvent
March 2022Vulnerability reported
March 31, 2022Public disclosure
Same dayPatch released
Following daysSecurity scanning begins globally

🔥 Spring4Shell vs Log4Shell

FeatureSpring4ShellLog4Shell
FrameworkSpring FrameworkApache Log4j
CVE2022-229652021-44228
Exploit ComplexityModerate (requires conditions)Extremely Low
Default ExposureLimitedWidespread
CVSS9.810.0

Spring4Shell was serious, but Log4Shell had broader real-world exposure.


📌 Summary

FieldValue
NameSpring4Shell
CVECVE-2022-22965
TypeRemote Code Execution
Affected SoftwareSpring Framework
SeverityCritical
Patch AvailableYes
Exploit ConditionsSpecific configuration required

⚠️ Final Notes

Spring4Shell demonstrated how complex object binding and reflection in modern frameworks can introduce unexpected attack surfaces.

While not as globally impactful as Log4Shell, it remains a critical vulnerability that required immediate patching in affected environments.

Download Tool