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.
CVE-2016-3081
Score elevated to 9.0 because EPSS predicts 94% probability of exploitation within the next 30 days (top 0.1% of all CVEs). NVD baseline CVSS 8.1 retained for reference. Confidence: see factors.
- High exploitation likelihood — EPSS 94%
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v3
- 8.1
- EG Score
- 9.0(high)
- EPSS
- 99.8%
- KEV
- Not listed
Published
April 26, 2016
Last Modified
May 6, 2026
References (22)
- secalert@redhathttp://packetstormsecurity.com/files/136856/Apache-Struts-2.3.28-Dynamic-Method-Invocation-Remote-Code-Execution.html
- secalert@redhathttp://www.huawei.com/en/psirt/security-advisories/huawei-sa-20160527-01-struts2-en
- secalert@redhathttp://www.oracle.com/technetwork/security-advisory/cpujul2016-2881720.html
- secalert@redhathttp://www.oracle.com/technetwork/security-advisory/cpuoct2016-2881722.html
- secalert@redhathttp://www.rapid7.com/db/modules/exploit/linux/http/struts_dmi_exec
- secalert@redhathttp://www.rapid7.com/db/modules/exploit/multi/http/struts_dmi_exec
- secalert@redhathttp://www.securityfocus.com/bid/87327
- secalert@redhathttp://www.securityfocus.com/bid/91787
- secalert@redhathttp://www.securitytracker.com/id/1035665
- secalert@redhathttps://struts.apache.org/docs/s2-032.html
- secalert@redhathttps://www.exploit-db.com/exploits/39756/
- af854a3a-2127-422b-91ae-364da2661108http://packetstormsecurity.com/files/136856/Apache-Struts-2.3.28-Dynamic-Method-Invocation-Remote-Code-Execution.html
- af854a3a-2127-422b-91ae-364da2661108http://www.huawei.com/en/psirt/security-advisories/huawei-sa-20160527-01-struts2-en
- af854a3a-2127-422b-91ae-364da2661108http://www.oracle.com/technetwork/security-advisory/cpujul2016-2881720.html
- af854a3a-2127-422b-91ae-364da2661108http://www.oracle.com/technetwork/security-advisory/cpuoct2016-2881722.html
Affected Packages
(1 across 1 ecosystem)
Maven(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| org.apache.struts:struts2-core | 2.3.28 | 2.3.28.1 | — |
Data Freshness Timeline
(refreshed 3× in last 7d / 15× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-07-07 13:42 UTCEPSS rescore
- 2026-07-06 02:20 UTCEPSS rescore
- 2026-07-06 02:20 UTCEPSS rescore
- 2026-07-04 06:28 UTCEPSS rescore
- 2026-06-23 21:30 UTCEPSS rescore
- 2026-06-23 15:50 UTCOSV refresh
- 2026-06-22 14:23 UTCEPSS rescore
- 2026-06-17 17:50 UTCEPSS rescore
- 2026-06-17 17:50 UTCEPSS rescore
- 2026-06-15 17:45 UTCEPSS rescore
- 2026-06-14 23:14 UTCEPSS rescore
- 2026-06-13 22:57 UTCEPSS rescore
- 2026-06-13 22:57 UTCEPSS rescore
- 2026-06-12 23:09 UTCEPSS rescore
- 2026-06-12 23:09 UTCEPSS rescore
- 2026-06-11 13:57 UTCEPSS rescore
- 2026-06-10 22:15 UTCEPSS rescore
- 2026-06-10 13:18 UTCEPSS rescore
- 2026-06-06 20:29 UTCOSV refresh
- 2026-06-06 13:45 UTCEPSS rescore
- 2026-06-05 06:08 UTCEPSS rescore
- 2026-06-05 06:08 UTCEPSS rescore
- 2026-06-01 13:49 UTCEPSS rescore
- 2026-06-01 13:49 UTCEPSS rescore
- 2026-05-28 13:42 UTCEPSS rescore
Show 9 moreShow fewer
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-26 07:16 UTCEPSS rescore
- 2026-05-22 20:35 UTCEG score recompute
- 2026-05-22 13:01 UTCOSV refresh
- 2026-05-20 22:37 UTCEPSS rescore
- 2026-05-20 22:37 UTCEPSS rescore
- 2026-05-20 22:37 UTCEPSS rescore
- 2026-05-18 21:30 UTCEPSS rescore
- 2026-05-18 21:30 UTCEPSS rescore
Publicly available exploits
(3 references)Working exploit code is in the public domain (1 Metasploit module) (1 Exploit-DB entry). Defenders should treat patch urgency accordingly — public PoCs typically lead to mass-exploitation within 24-72 hours.
- Exploit-DBEDB-39756✓ verifiedFirst seen May 2, 2016
Apache Struts - Dynamic Method Invocation Remote Code Execution (Metasploit)
Open source ↗ - Metasploitexploit/multi/http/struts_dmi_exec✓ verifiedFirst seen Apr 27, 2016
Apache Struts Dynamic Method Invocation Remote Code Execution
Open source ↗ - Nucleihttp/cves/2016/CVE-2016-3081.yamlFirst seen Jan 1, 2016
Apache S2-032 Struts - Remote Code Execution
Open source ↗
Frequently asked(5)
What is CVE-2016-3081?
When was CVE-2016-3081 disclosed?
Is CVE-2016-3081 actively exploited?
What is the CVSS score of CVE-2016-3081?
How do I remediate CVE-2016-3081?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2016-3081
Is Your Infrastructure Affected by CVE-2016-3081?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.