← Vulnerability feed

Vulnerability record · CVE-2014-0112 · published 29 April 2014

CVE-2014-0112: Apache Struts ParametersInterceptor access control bypass enables remote code execution

Apache · Struts

ParametersInterceptor in Apache Struts before 2.3.20 fails to properly restrict access to the getClass method, letting a crafted request manipulate the ClassLoader and execute arbitrary code. The flaw is an incomplete fix for CVE-2014-0094, so systems patched only for that earlier issue remain exposed. It matters because Struts is widely deployed and the attack is network-reachable without credentials.

7.5 CVSS 2.0 High EPSS 98% · top 0.1% CWE-264 · Permissions and access controls
7.5CVSS 2.0 base score
98%EPSS exploitation probability, 30 days
NoNot in CISA KEV
1Affected product versions listed by NVD
28References
17 Jun 2026Last modified by NVD

Description

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.

AV:N/AC:L/Au:N/C:P/I:P/A:P

Automated analysis

Generated by VULONE's analysis model from the NVD record, CISA KEV and EPSS data on 17 September 2026. Confidence: medium.

high priorityNetwork-reachable unauthenticated remote code execution with a very high EPSS score, though no KEV listing or confirmed in-the-wild reporting is provided.

What it is

ParametersInterceptor in Apache Struts before 2.3.20 fails to properly restrict access to the getClass method, letting a crafted request manipulate the ClassLoader and execute arbitrary code. The flaw is an incomplete fix for CVE-2014-0094, so systems patched only for that earlier issue remain exposed. It matters because Struts is widely deployed and the attack is network-reachable without credentials.

Impact

A remote attacker can execute arbitrary code in the context of the application server, leading to full compromise of the affected host or application.

Attack surface

Reached over the network via crafted HTTP requests to a Struts application that processes parameters through ParametersInterceptor. No authentication or user interaction is required per the CVSS vector AV:N/AC:L/Au:N.

Exploitation

Not listed in CISA KEV and no ransomware associations are documented, but EPSS is very high (0.979 probability, 0.999 percentile), indicating strong likelihood of exploitation activity. Reference tags are advisory and patch links only, with no public exploit tag supplied.

What to do

  • Upgrade Apache Struts to 2.3.20 or later, which contains the complete fix for CVE-2014-0094 and this bypass.
  • If immediate upgrade is not possible, apply the S2-021 vendor guidance and any interim configuration restrictions on parameter handling.
  • Inventory applications and embedded frameworks using Struts to find instances still on versions before 2.3.20, including third-party products that bundle it.
  • Restrict network exposure of Struts-based applications and place them behind authentication or a WAF where feasible.
  • Monitor vendor advisories for downstream products (for example Oracle, IBM, VMware, Red Hat) that shipped affected Struts versions.

Detection

  • Inspect HTTP requests for parameter names or values referencing getClass, class.classloader, or similar class-loading constructs.
  • Alert on unexpected outbound connections or process creation from the Java application server hosting Struts.
  • Review web and application logs for anomalous parameter patterns or errors tied to ParametersInterceptor.
  • Correlate Struts version fingerprints in responses or build manifests against the 2.3.20 threshold.

This assessment is produced automatically and is not human-reviewed. Verify against the vendor advisory before acting on it.

Affected products

1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

LinkTags
http://jvn.jp/en/jp/JVN19294237/index.html Third Party AdvisoryVDB Entry
http://jvndb.jvn.jp/jvndb/JVNDB-2014-000045 Third Party AdvisoryVDB Entry
http://packetstormsecurity.com/files/127215/VMware-Security-Advisory-2014-0007.html Third Party AdvisoryVDB Entry
http://secunia.com/advisories/59178 Permissions Required
http://secunia.com/advisories/59500 Permissions Required
http://www-01.ibm.com/support/docview.wss?uid=swg21676706 Third Party Advisory
http://www.oracle.com/technetwork/topics/security/cpuapr2015-2365600.html Third Party Advisory
http://www.securityfocus.com/archive/1/531952/100/0/threaded Third Party AdvisoryVDB Entry
http://www.securityfocus.com/archive/1/532549/100/0/threaded Third Party AdvisoryVDB Entry
http://www.securityfocus.com/bid/67064 Third Party AdvisoryVDB Entry
http://www.vmware.com/security/advisories/VMSA-2014-0007.html Third Party Advisory
https://access.redhat.com/errata/RHSA-2019:0910 Third Party Advisory
https://bugzilla.redhat.com/show_bug.cgi?id=1091939 Issue Tracking
https://cwiki.apache.org/confluence/display/WW/S2-021 PatchVendor Advisory
http://jvn.jp/en/jp/JVN19294237/index.html Third Party AdvisoryVDB Entry
http://jvndb.jvn.jp/jvndb/JVNDB-2014-000045 Third Party AdvisoryVDB Entry
http://packetstormsecurity.com/files/127215/VMware-Security-Advisory-2014-0007.html Third Party AdvisoryVDB Entry
http://secunia.com/advisories/59178 Permissions Required
http://secunia.com/advisories/59500 Permissions Required
http://www-01.ibm.com/support/docview.wss?uid=swg21676706 Third Party Advisory
http://www.oracle.com/technetwork/topics/security/cpuapr2015-2365600.html Third Party Advisory
http://www.securityfocus.com/archive/1/531952/100/0/threaded Third Party AdvisoryVDB Entry
http://www.securityfocus.com/archive/1/532549/100/0/threaded Third Party AdvisoryVDB Entry
http://www.securityfocus.com/bid/67064 Third Party AdvisoryVDB Entry
http://www.vmware.com/security/advisories/VMSA-2014-0007.html Third Party Advisory
https://access.redhat.com/errata/RHSA-2019:0910 Third Party Advisory
https://bugzilla.redhat.com/show_bug.cgi?id=1091939 Issue Tracking
https://cwiki.apache.org/confluence/display/WW/S2-021 PatchVendor Advisory

Track CVE-2014-0112 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

9.8CVE-2020-17530Apache Struts forced OGNL evaluation enables remote code executionApache Struts 2.0.0 through 2.5.25 performs forced OGNL evaluation on raw user input placed in tag attributes, allowing expression language injection…KEVEPSS 96%analysed9.8CVE-2017-9791Apache Struts 1 plugin input validation flaw enables remote code executionThe Struts 1 plugin in Apache Struts 2.1.x and 2.3.x may allow remote code execution when a malicious field value is passed in a raw message to the A…KEVEPSS 99%analysed9.8CVE-2017-5638Apache Struts 2 Jakarta Multipart parser remote code executionThe Jakarta Multipart parser in Apache Struts 2 mishandles exceptions and error messages during file-upload attempts, letting a crafted Content-Type,…KEVEPSS 100%analysed9.8CVE-2013-2251Apache Struts 2 OGNL injection enables remote code executionApache Struts 2.0.0 through 2.3.15 fails to properly validate request parameters, allowing crafted action:, redirect:, or redirectAction: prefixes to…KEVEPSS 100%analysed9.8CVE-2012-0391Apache Struts ExceptionDelegator OGNL injection enables remote code executionApache Struts before 2.2.3.1 evaluates parameter values as OGNL expressions in the ExceptionDelegator component during exception handling for mismatc…KEVEPSS 76%analysed8.1CVE-2018-11776Apache Struts namespace handling flaw enables remote code executionApache Struts 2.3 through 2.3.34 and 2.5 through 2.5.16 can execute remote code when alwaysSelectFullNamespace is enabled and results or url tags are…KEVEPSS 100%analysed8.1CVE-2017-9805Apache Struts REST Plugin XStream deserialization RCEThe REST Plugin in Apache Struts 2.1.1 through 2.3.x before 2.3.34 and 2.5.x before 2.5.13 uses an XStreamHandler with an XStream instance for deseri…KEVEPSS 99%analysed7.5CVE-2006-1547Apache Struts 1 ActionForm multipart parameter denial of serviceApache Struts before 1.2.9 with BeanUtils 1.7 exposes the public getMultipartRequestHandler method through ActionForm parameter binding. A remote att…KEVEPSS 55%analysed

Source: NIST National Vulnerability Database (record CVE-2014-0112), CISA KEV, FIRST EPSS (scores of 2026-09-26). This page is refreshed as NVD updates the record.