ParametersInterceptor in Apache Struts before 2.3.20 does not properly restrict access to the getClass method, which allows remote attackers to "manipulate" the ClassLoader and execute arbitrary code via a crafted request. NOTE: this vulnerability exists because of an incomplete fix for CVE-2014-0094.
CVE-2014-0112
Score elevated to 9.0 because EPSS predicts 92% probability of exploitation within the next 30 days (top 0.3% of all CVEs). Confidence: see factors.
- High exploitation likelihood — EPSS 98%
A fix is available — apply it.
- CVSS v3
- —
- EG Score
- 9.0(low)
- EPSS
- 99.9%
- KEV
- Not listed
Published
April 29, 2014
Last Modified
May 6, 2026
References (28)
- secalert@redhathttp://jvn.jp/en/jp/JVN19294237/index.html
- secalert@redhathttp://jvndb.jvn.jp/jvndb/JVNDB-2014-000045
- secalert@redhathttp://packetstormsecurity.com/files/127215/VMware-Security-Advisory-2014-0007.html
- secalert@redhathttp://secunia.com/advisories/59178
- secalert@redhathttp://secunia.com/advisories/59500
- secalert@redhathttp://www-01.ibm.com/support/docview.wss?uid=swg21676706
- secalert@redhathttp://www.oracle.com/technetwork/topics/security/cpuapr2015-2365600.html
- secalert@redhathttp://www.securityfocus.com/archive/1/531952/100/0/threaded
- secalert@redhathttp://www.securityfocus.com/archive/1/532549/100/0/threaded
- secalert@redhathttp://www.securityfocus.com/bid/67064
- secalert@redhathttp://www.vmware.com/security/advisories/VMSA-2014-0007.html
- secalert@redhathttps://access.redhat.com/errata/RHSA-2019:0910
- secalert@redhathttps://bugzilla.redhat.com/show_bug.cgi?id=1091939
- secalert@redhathttps://cwiki.apache.org/confluence/display/WW/S2-021
- af854a3a-2127-422b-91ae-364da2661108http://jvn.jp/en/jp/JVN19294237/index.html
Patch Availability(1)
| Vendor / Ecosystem | Fixed in / Patch | Released | Source |
|---|---|---|---|
| redhat | patch | 2019-04-30 | redhat |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
Affected Packages
(1 across 1 ecosystem)
Maven(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| org.apache.struts:struts2-core | 2.0.11 ... 2.3.8 (38 versions) | 2.3.20 | — |
All Vendor Advisories
(1)
Every vendor that published an advisory referencing this CVE — pulled from our cve_vendor_advisories aggregation. Click any row for the vendor's original advisory page.
Data Freshness Timeline
(refreshed 0× in last 7d / 8× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-06-25 13:47 UTCEPSS rescore
- 2026-06-25 13:47 UTCEPSS rescore
- 2026-06-22 14:22 UTCEPSS rescore
- 2026-06-22 14:22 UTCEPSS rescore
- 2026-06-18 17:49 UTCEPSS rescore
- 2026-06-18 17:49 UTCEPSS rescore
- 2026-06-15 17:44 UTCEPSS rescore
- 2026-06-12 23:08 UTCEPSS rescore
- 2026-06-10 22:15 UTCEPSS rescore
- 2026-06-08 14:14 UTCEPSS rescore
- 2026-06-07 15:22 UTCEPSS rescore
- 2026-06-05 06:08 UTCEPSS rescore
- 2026-06-05 06:08 UTCEPSS rescore
- 2026-06-02 20:10 UTCEPSS rescore
- 2026-06-02 20:10 UTCEPSS rescore
- 2026-05-31 22:28 UTCEPSS rescore
- 2026-05-31 22:28 UTCEPSS rescore
- 2026-05-28 19:14 UTCEG score recompute
- 2026-05-28 19:14 UTCVendor advisory
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-27 13:38 UTCEPSS rescore
- 2026-05-27 13:38 UTCEPSS rescore
- 2026-05-24 16:43 UTCEPSS rescore
Show 8 moreShow fewer
- 2026-05-22 21:15 UTCEPSS rescore
- 2026-05-22 21:15 UTCEPSS rescore
- 2026-05-22 21:15 UTCEPSS rescore
- 2026-05-21 22:39 UTCEPSS rescore
- 2026-05-20 11:21 UTCEPSS rescore
- 2026-05-20 11:21 UTCEPSS rescore
- 2026-05-18 21:29 UTCEPSS rescore
- 2026-05-18 21:29 UTCEPSS rescore
Publicly available exploits
(3 references)Working exploit code is in the public domain (1 Metasploit module) (2 Exploit-DB entries). Defenders should treat patch urgency accordingly — public PoCs typically lead to mass-exploitation within 24-72 hours.
- Exploit-DBEDB-33142✓ verifiedFirst seen May 2, 2014
Apache Struts - ClassLoader Manipulation Remote Code Execution (Metasploit)
Open source ↗ - Exploit-DBEDB-41690✓ verifiedFirst seen Mar 6, 2014
Apache Struts < 1.3.10 / < 2.3.16.2 - ClassLoader Manipulation Remote Code Execution (Metasploit)
Open source ↗ - Metasploitexploit/multi/http/struts_code_exec_classloader✓ verifiedFirst seen Mar 6, 2014
Apache Struts ClassLoader Manipulation Remote Code Execution
Open source ↗
Related CVEs(same vendor)
Frequently asked(4)
What is CVE-2014-0112?
When was CVE-2014-0112 disclosed?
Is CVE-2014-0112 actively exploited?
How do I remediate CVE-2014-0112?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2014-0112
Is Your Infrastructure Affected by CVE-2014-0112?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.