Skip to content
Fencer Intel
high 7.5

CVE-2014-0112 in the critical feed json

ClassLoader manipulation in Apache Struts

published 2014-04-29 12 y ago modified 2026-06-17 4 mo ago also GHSA-prjv-jj26-wf8h , EUVD-2022-4820

cvss
7.5
version 2.0, NVD
cisa kev
Not listed
not in CISA's catalog
epss
98.1%
EPSS 98.1% chance of exploitation in 30 days, percentile 99.9%
public exploits
3
Metasploit, Exploit-DB

Summary

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.

Patch / fix

  • maven org.apache.struts:struts2-core 2.3.20
  • apache struts 2.3.16.2

Vendor 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-0112 updated cvss 7.3

struts2: ClassLoader manipulation via request parameters

  • Red Hat Fuse 7.3
    fixed: vendor fix RHSA-2019:0910
  • Red Hat Enterprise Linux 5 struts Red Hat Fuse 7 struts-core Red Hat JBoss Fuse 6 struts-core Red Hat JBoss Operations Network 3 struts struts
    not 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

  1. First public exploit (Metasploit exploit/multi/http/struts_code_exec_classloader)
  2. Published

Exploit prediction

98.06% chance of exploitation in the next 30 days, higher than 99.9% of all scored CVEs (FIRST EPSS, 2026-11-09).

Exploits and checks

CVSS scores

assigned by version score vector
NVD 2.0 7.5 AV:N/AC:L/Au:N/C:P/I:P/A:P

Affected packages

ecosystem package affected fixed in
maven org.apache.struts:struts2-core
<2.3.20
2.3.20

Classification

Weakness
  • CWE-264 Permissions, Privileges, and Access Controls

References

Sources

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.