Skip to content
Fencer Intel
high 7.5

CVE-2014-0113 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-3c5c-xrq4-qhr8 , EUVD-2022-2155

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

Summary

CookieInterceptor in Apache Struts before 2.3.20, when a wildcard cookiesName value is used, 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-0113 updated cvss 7.5

struts2: ClassLoader manipulation via cookie request headers

  • Red Hat Enterprise Linux 5 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. Published
  2. First public exploit (EDB-33142)

Exploit prediction

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

Exploits and checks

  • EDB-33142 Apache Struts - ClassLoader Manipulation Remote Code Execution (Metasploit) remote, 2014-05-02

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.