IT SBIT Services
Schneeberger
DEEN
CVE tracker

Apache Struts 2: Remote code execution via Dynamic Method Invocation

CVE-2016-3081High 8.1Actively exploitedPublic exploit

← All vulnerabilities

Actively exploited – in the CISA catalogue of Known Exploited Vulnerabilities since 8 Oct 2026
Deadline for US federal agencies: 11 Oct 2026

Summary

Apache Struts 2 versions 2.3.20 to 2.3.28 allow remote attackers to execute arbitrary code on the server when Dynamic Method Invocation (DMI) is enabled. The flaw lies in how the framework handles chained expressions with the method: prefix, so a crafted request can be sent without authentication. Huawei products that embed Struts 2 are also affected. CISA lists the vulnerability as known exploited. The CPE data in the CVE record names Huawei Agile Controller-campus Firmware, but the sources identify Apache Struts 2 as the affected product, so asset matching needs verification.

Affected

  • Apache Struts 2.3.20 to 2.3.28, except 2.3.20.3 and 2.3.24.3, when Dynamic Method Invocation is enabled (Apache advisory S2-032)
  • The NVD description also lists 2.3.19 and up to 2.3.24.1 in the ranges; verify these versions manually
  • Huawei products that embed Struts 2 (Huawei advisory huawei-sa-20160527-01); affected versions unknown

Fixed in

  • Apache Struts 2.3.20.3
  • Apache Struts 2.3.24.3
  • Apache Struts 2.3.28.1
  • Huawei products: unknown, request fixed versions from Huawei PSIRT

Workaround

  • Disable Dynamic Method Invocation: set struts.enable.DynamicMethodInvocation to false in struts.xml and restart the web server
  • Alternative (development task): implement a custom ActionMapper based on the source code of the fixed Struts versions

Exploitation

  • CISA Known Exploited Vulnerabilities catalog: added 2026-10-08
  • Public exploit available on Exploit-DB, and a Metasploit module exists
  • No authentication required (PR:N); attack complexity high (AC:H); CISA SSVC: exploitation active, automatable no, technical impact total

Our recommendation

  • Inventory all Struts 2 usage, including bundled components in vendor appliances and Huawei products
  • Upgrade to Struts 2.3.20.3, 2.3.24.3 or 2.3.28.1, or disable Dynamic Method Invocation where possible
  • For internet-facing systems, preserve logs and check for signs of compromise before patching, as recommended by CISA
  • For embedded Huawei products, request fixed versions from Huawei PSIRT
  • Monitor web server logs for requests containing method: expressions

Public exploits

Links to third-party sites, not checked by us – exploit code can contain malware. Only use it in isolated test environments.

Research sources

Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 30 Oct 2026, 13:43.

Original description (NVD)

Apache Struts 2.3.19 to 2.3.20.2, 2.3.21 to 2.3.24.1, and 2.3.25 to 2.3.28, when Dynamic Method Invocation is enabled, allow remote attackers to execute arbitrary code via method: prefix, related to chained expressions.

Required action (CISA)

Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.

NVD references (23)

Sources

The tracker combines official, freely usable data sources – updated continuously:

This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.

Affected? We can help.

We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.