---
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
---

## Overview

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 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.

This 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.

Users are recommended to upgrade to version 6.12.0 or 7.4.0, which fixes the issue.

## 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`

## Remediation

Upgrade past the affected range:

- `struts 7.4.0`

## Vendor advisories

- **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)
