CVE-2018-11776:
Apache Struts vulnerability (CVE-2018-11776) enables RCE via namespace bypass. CVSS 8.1. Get vulnerability details & mitigation steps.
8.1
CVSS ScoreBasic Information
CVE ID
GHSA ID
EPSS Score
-
CWE
Published
10/18/2018
Updated
7/25/2024
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
org.apache.struts:struts2-core | maven | >= 2.0.4, <= 2.3.34 | 2.3.35 |
org.apache.struts:struts2-core | maven | >= 2.5, <= 2.5.16 | 2.5.17 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stemmed from improper namespace validation in action mapping. The commit diff shows critical changes:
- Added namespace validation pattern (allowedNamespaceNames)
- Modified parseNameAndNamespace to use cleanupNamespaceName
- Patched both DefaultActionMapper and RestActionMapper implementations
Key indicators:
- Pre-patch code set namespace directly from URI parameters
- No whitelist validation for namespace values
- Attack vectors leveraged uncontrolled namespace values for OGNL injection
- RestActionMapper showed identical vulnerable pattern
These functions were directly responsible for processing untrusted namespace values without validation, enabling the RCE vulnerability.