CVE-2014-0094 json
ClassLoader manipulation in Apache Struts
published 12y ago modified 4mo ago also GHSA-vrwc-qjmw-5rjm , EUVD-2022-5427
- cvss
- 5.0
- version 2.0, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 99.4%
- EPSS 99.4% chance of exploitation in 30 days, percentile 99.9%
- public exploits
- 3
- Metasploit and Exploit-DB
Summary
The ParametersInterceptor in Apache Struts before 2.3.16.2 allows remote attackers to "manipulate" the ClassLoader via the class parameter, which is passed to the getClass method.
Patch / fix
- maven org.apache.struts:struts2-core 2.3.16.2
- maven org.apache.struts.xwork:xwork-core 2.3.16.2
- apache struts 2.3.16.1
Is CVE-2014-0094 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2014-0094 updated cvss 5.0
struts2: ClassLoader manipulation via request parameters
-
Red Hat Enterprise Linux 5 strutsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Timeline
- First public exploit (Metasploit exploit/multi/http/struts_code_exec_classloader)
- Published
Exploit prediction
99.39% chance of exploitation in the next 30 days, higher than 99.9% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- Metasploit exploit/multi/http/struts_code_exec_classloader Apache Struts ClassLoader Manipulation Remote Code Execution metasploit exploit, manual rank, 2014-03-06
- EDB-41690 Apache Struts < 1.3.10 / < 2.3.16.2 - ClassLoader Manipulation Remote Code Execution (Metasploit) remote, 2014-03-06
- EDB-33142 Apache Struts - ClassLoader Manipulation Remote Code Execution (Metasploit) remote, 2014-05-02
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 2.0 | 5.0 | AV:N/AC:L/Au:N/C:N/I:P/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | org.apache.struts:struts2-core | >=2.0.0, <2.3.16.2 |
2.3.16.2 |
| maven | org.apache.struts.xwork:xwork-core | >=2.0.0, <2.3.16.2 |
2.3.16.2 |
References
-
github.com
/apache/struts/commit/2e2da292166adbc78c4cb1e308b30ddb4fba6d3f
web
-
github.com
/apache/struts/commit/6315241719be167542962da436b38782ed730c62
web
-
struts.apache.org
/release/2.3.x/docs/s2-020.html
web, vendor-advisory
-
secunia.com
/advisories/56440
third-party-advisory, vendor-advisory
-
packetstormsecurity.com
/files/127215/VMware-Security-Advisory-2014-0007.html
web, third-party-advisory, vdb-entry
-
secunia.com
/advisories/59178
third-party-advisory, permissions-required
-
vmware.com
/security/advisories/VMSA-2014-0007.html
web, third-party-advisory
-
konakart.com
/downloads/ver-7-3-0-0-whats-new
web, third-party-advisory
-
securityfocus.com
/archive/1/531362/100/0/threaded
mailing-list, third-party-advisory, vdb-entry
-
oracle.com
/technetwork/topics/security/cpuapr2015-2365600.html
third-party-advisory
-
huawei.com
/en/security/psirt/security-bulletins/security-advisories/hw-350733.htm
web, third-party-advisory
-
jvn.jp
/en/jp/JVN19294237/index.html
third-party-advisory, web, vdb-entry
-
jvndb.jvn.jp
/jvndb/JVNDB-2014-000045
third-party-advisory, web, vdb-entry
-
www-01.ibm.com
/support/docview.wss?uid=swg21676706
web, third-party-advisory
-
securitytracker.com
/id/1029876
vdb-entry, third-party-advisory
-
securityfocus.com
/archive/1/532549/100/0/threaded
mailing-list, third-party-advisory, vdb-entry
-
securityfocus.com
/bid/65999
vdb-entry, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2014-0094
advisory
-
github.com
/apache/struts
package
Sources
- CVE List CVE-2014-0094
- GitHub Advisory GHSA-vrwc-qjmw-5rjm
- NVD CVE-2014-0094
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.