{"id":"CVE-2026-104711","title":"Improper neutralization of special elements used in an expression language statement ('Expression Language Injection') vulnerability in Apache Struts","summary":"Improper neutralization of special elements used in an expression language statement ('Expression Language Injection') vulnerability in Apache Struts. If the application is configured to use the legacy RESTful action mapper, a crafted re…","severity":"critical","cvss":9.8,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","cwe":["CWE-917"],"vendor":"apache","product":"struts","affected":["struts >= 2.0.0, <= 2.3.37","struts >= 2.5.0, <= 2.5.33","struts >= 6.0.0, < 6.12.0","struts >= 7.0.0, < 7.4.0"],"patched":["struts 7.4.0"],"published":"2026-10-05","updated":"2026-10-08","sourceUpdated":"2026-10-08T19:05:18.073","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-104711","references":[{"url":"https://cwiki.apache.org/confluence/display/WW/S2-075","label":"security@apache.org"},{"url":"http://www.openwall.com/lists/oss-security/2026/10/05/10","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-104711.json"},{"url":"https://access.redhat.com/security/cve/CVE-2026-104711"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2546057"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-104711"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-104711"}],"tags":["nvd","cve.org","csaf","vex","red-hat","exploit-available"],"epss":0.01394,"epssPercentile":0.72234,"ssvc":{"exploitation":"none","automatable":"yes","technicalImpact":"total","timestamp":"2026-10-06T14:08:35.909211Z"},"scores":{"nvd":9.8,"adp":9.8,"vendor":8.1},"ingestedAt":"2026-10-05T19:30:59.977Z","exploits":{"github":2,"githubRepos":["https://github.com/uday952/CVE-2026-104711","https://github.com/uday952/CVE-2026-104711-POC-NEW-VARIANT"],"checkedAt":"2026-10-27T16:54:08.135Z"},"exploitAvailable":true,"slug":"CVE-2026-104711","body":"## Overview\n\nImproper neutralization of special elements used in an expression language statement ('Expression Language Injection') vulnerability in Apache Struts. If the application is configured to use the legacy RESTful action mapper, a crafted request can inject an OGNL expression that may lead to remote code execution. Struts 7 is affected only when the OGNL allowlist is disabled; it is enabled by default. Applications using the default action mapper, the restful2 mapper, or the Struts REST plugin are not affected.\n\nThis issue affects Apache Struts: from 2.0.0 through 2.3.37, from 2.5.0 through 2.5.33, from 6.0.0 through 6.11.0, from 7.0.0 through 7.3.0.\n\nUsers are recommended to upgrade to version 6.12.0 or 7.4.0, which fixes the issue.\n\n## Affected\n\n- `struts >= 2.0.0, <= 2.3.37`\n- `struts >= 2.5.0, <= 2.5.33`\n- `struts >= 6.0.0, < 6.12.0`\n- `struts >= 7.0.0, < 7.4.0`\n\n## Remediation\n\nUpgrade past the affected range:\n\n- `struts 7.4.0`\n\n## Vendor advisories\n\n- **Red Hat VEX** · Important · affected: Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 8, Red Hat Enterprise Linux 9, Red Hat Fuse 7 · no fix planned: Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 8, Red Hat Enterprise Linux 9, Red Hat Fuse 7 · updated 2026-10-06 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-104711.json)","depth":"abyssal","depthScore":66,"depthScoreParts":{"impact":53.9,"likelihood":0.3,"exploitation":12,"ransomware":0},"changes":[{"seq":223886,"id":"CVE-2026-104711","ts":1792267184948,"field":"exploit_available","old":"false","new":"true"},{"seq":216487,"id":"CVE-2026-104711","ts":1791298973056,"field":"cvss","old":"8.1","new":"9.8"},{"seq":216486,"id":"CVE-2026-104711","ts":1791298973056,"field":"severity","old":"high","new":"critical"},{"seq":216215,"id":"CVE-2026-104711","ts":1791274024288,"field":"cvss","old":null,"new":"8.1"},{"seq":216214,"id":"CVE-2026-104711","ts":1791274024288,"field":"severity","old":"none","new":"high"}]}