{"id":"CVE-2016-3081","published":"2016-04-26T14:59:02Z","modified":"2026-10-09T14:43:05Z","title":"Apache Struts Command Injection Vulnerability","vendor":"Apache","product":"Struts","tier":"core","eol":null,"description":{"text":"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.","provenance":"source","from":"NVD"},"summary":{"text":"Apache Struts 2, in the affected versions 2.3.19 through 2.3.28 (including the listed sub-ranges), contains a command injection flaw in the handling of Dynamic Method Invocation, where the \"method:\" prefix is not properly neutralised in chained expressions. An remote attacker with no privileges and no user interaction can execute arbitrary code, but only when Dynamic Method Invocation is enabled in the application's configuration.","provenance":"ai","model":"claude-haiku-5-5","generatedAt":"2026-10-29T08:31:44Z"},"cvss":{"score":8.1,"severity":"HIGH","version":"3.1","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","provenance":"source","from":"NVD"},"epss":{"score":0.96525,"percentile":0.99882,"date":"2026-10-28","provenance":"source"},"kev":{"dateAdded":"2026-10-08","dueDate":"2026-10-11","ransomware":false,"requiredAction":"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.","notes":"This vulnerability could affect an open-source component, third-party library, protocol, or proprietary implementation that could be used by different products. For more information, please see: https://cwiki.apache.org/confluence/display/WW/S2-032 ; ; BOD 26-04: https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk ; Forensics Triage Requirements: https://www.cisa.gov/news-events/directives/bod-26-04-implementation-guidance-prioritizing-security-updates-based-risk ; https://nvd.nist.gov/vuln/detail/CVE-2016-3081","provenance":"source"},"vulncheckKev":{"dateAdded":"2026-07-23","exploitedFirstSeen":"2026-07-23","ransomware":false,"evidence":[{"url":"https://previdian.com/CVE-2016-3081","date":"2026-07-23"},{"url":"https://www.cisa.gov/news-events/cybersecurity-advisories/aa26-281a","date":"2026-10-08"},{"url":"https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json","date":"2026-10-08"}],"evidenceTotal":3,"provenance":"source"},"exploited":true,"otx":{"pulseCount":26,"pulses":[{"name":"Actively_Exploited_Kev | Oct 29, 2026","url":"https://otx.alienvault.com/pulse/6ae20c1db17e7057ae7d9ad1","created":"2026-10-28"},{"name":"Actively_Exploited_Kev | Oct 28, 2026","url":"https://otx.alienvault.com/pulse/6ae0ba7e0e2a97ff7b218819","created":"2026-10-27"},{"name":"Actively_Exploited_Kev | Oct 27, 2026","url":"https://otx.alienvault.com/pulse/6adf68b85c3e852f3c111d18","created":"2026-10-26"},{"name":"Actively_Exploited_Kev | Oct 24, 2026","url":"https://otx.alienvault.com/pulse/6adb740e397c3ad4799aa4cd","created":"2026-10-23"},{"name":"Actively_Exploited_Kev | Oct 23, 2026","url":"https://otx.alienvault.com/pulse/6ada236fcfba2dfa730ea482","created":"2026-10-22"},{"name":"Actively_Exploited_Kev | Oct 22, 2026","url":"https://otx.alienvault.com/pulse/6ad8d33a077cbb5cab524d80","created":"2026-10-21"},{"name":"Actively_Exploited_Kev | Oct 21, 2026","url":"https://otx.alienvault.com/pulse/6ad78130c4d1ac2be83a8b6d","created":"2026-10-20"},{"name":"Actively_Exploited_Kev | Oct 20, 2026","url":"https://otx.alienvault.com/pulse/6ad62f63c24a405a3423cc13","created":"2026-10-19"},{"name":"Actively_Exploited_Kev | Oct 19, 2026","url":"https://otx.alienvault.com/pulse/6ad4dda174e5797d0bd238b7","created":"2026-10-18"},{"name":"Actively_Exploited_Kev | Oct 18, 2026","url":"https://otx.alienvault.com/pulse/6ad38c22e1848f8189d1c121","created":"2026-10-17"}],"provenance":"machine"},"cwes":[{"id":"CWE-77","name":"Improper Neutralization of Special Elements used in a Command"}],"references":[{"url":"http://packetstormsecurity.com/files/136856/Apache-Struts-2.3.28-Dynamic-Method-Invocation-Remote-Code-Execution.html","tags":["Exploit","Third Party Advisory"]},{"url":"http://www.huawei.com/en/psirt/security-advisories/huawei-sa-20160527-01-struts2-en","tags":["Third Party Advisory"]},{"url":"http://www.oracle.com/technetwork/security-advisory/cpujul2016-2881720.html","tags":["Patch","Third Party Advisory"]},{"url":"http://www.oracle.com/technetwork/security-advisory/cpuoct2016-2881722.html","tags":["Third Party Advisory"]},{"url":"http://www.rapid7.com/db/modules/exploit/linux/http/struts_dmi_exec","tags":["Third Party Advisory","Broken Link"]},{"url":"http://www.rapid7.com/db/modules/exploit/multi/http/struts_dmi_exec","tags":["Third Party Advisory"]},{"url":"http://www.securityfocus.com/bid/87327","tags":["Third Party Advisory","VDB Entry"]},{"url":"http://www.securityfocus.com/bid/91787","tags":["Third Party Advisory","VDB Entry"]},{"url":"http://www.securitytracker.com/id/1035665","tags":["Third Party Advisory","VDB Entry"]},{"url":"https://struts.apache.org/docs/s2-032.html","tags":["Patch","Vendor Advisory"]},{"url":"https://www.exploit-db.com/exploits/39756/","tags":["Exploit","Third Party Advisory","VDB Entry"]},{"url":"http://packetstormsecurity.com/files/136856/Apache-Struts-2.3.28-Dynamic-Method-Invocation-Remote-Code-Execution.html","tags":["Exploit","Third Party Advisory"]},{"url":"http://www.huawei.com/en/psirt/security-advisories/huawei-sa-20160527-01-struts2-en","tags":["Third Party Advisory"]},{"url":"http://www.oracle.com/technetwork/security-advisory/cpujul2016-2881720.html","tags":["Patch","Third Party Advisory"]},{"url":"http://www.oracle.com/technetwork/security-advisory/cpuoct2016-2881722.html","tags":["Third Party Advisory"]},{"url":"http://www.rapid7.com/db/modules/exploit/linux/http/struts_dmi_exec","tags":["Third Party Advisory","Broken Link"]},{"url":"http://www.rapid7.com/db/modules/exploit/multi/http/struts_dmi_exec","tags":["Third Party Advisory"]},{"url":"http://www.securityfocus.com/bid/87327","tags":["Third Party Advisory","VDB Entry"]},{"url":"http://www.securityfocus.com/bid/91787","tags":["Third Party Advisory","VDB Entry"]},{"url":"http://www.securitytracker.com/id/1035665","tags":["Third Party Advisory","VDB Entry"]},{"url":"https://struts.apache.org/docs/s2-032.html","tags":["Patch","Vendor Advisory"]},{"url":"https://www.exploit-db.com/exploits/39756/","tags":["Exploit","Third Party Advisory","VDB Entry"]},{"url":"https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2016-3081","tags":["US Government Resource"]}],"techniques":[{"id":"T1190","name":"Exploit Public-Facing Application","tactics":["initial-access"],"provenance":"ai","basis":"ai-mapping","bases":["ai-mapping"],"basisDetail":"claude-haiku-5-5: remote unauthenticated exploitation of public-facing web framework","mappingType":"exploitation_technique","evidence":[{"from":"description","quote":"allow remote attackers to execute arbitrary code","start":119,"end":167}],"model":"claude-haiku-5-5","confidence":"medium","confidenceNote":"AI-mapped from the description (quote-validated, not expert-reviewed)"},{"id":"T1059","name":"Command and Scripting Interpreter","tactics":["execution"],"provenance":"ai","basis":"ai-mapping","bases":["ai-mapping"],"basisDetail":"claude-haiku-5-5: arbitrary code execution via OGNL expression injection","mappingType":"primary_impact","evidence":[{"from":"description","quote":"allow remote attackers to execute arbitrary code","start":119,"end":167}],"model":"claude-haiku-5-5","confidence":"medium","confidenceNote":"AI-mapped from the description (quote-validated, not expert-reviewed)"}],"reports":[],"affected":[{"ecosystem":"Maven","package":"org.apache.struts:struts2-core","vulnerableRanges":[">=2.3.19, <2.3.20.3",">=2.3.21, <2.3.24.3",">=2.3.25, <2.3.28.1"],"patched":["2.3.20.3","2.3.24.3","2.3.28.1"],"from":["GHSA-8c6j-ffmf-q6vm"],"provenance":"source"}],"advisories":[{"id":"GHSA-8c6j-ffmf-q6vm","url":"https://github.com/advisories/GHSA-8c6j-ffmf-q6vm","severity":"HIGH","ecosystem":"Maven","package":"org.apache.struts:struts2-core","vulnerableRanges":[">=2.3.19, <2.3.20.3"],"patched":["2.3.20.3"],"provenance":"source","from":"GHSA"},{"id":"GHSA-8c6j-ffmf-q6vm","url":"https://github.com/advisories/GHSA-8c6j-ffmf-q6vm","severity":"HIGH","ecosystem":"Maven","package":"org.apache.struts:struts2-core","vulnerableRanges":[">=2.3.21, <2.3.24.3"],"patched":["2.3.24.3"],"provenance":"source","from":"GHSA"},{"id":"GHSA-8c6j-ffmf-q6vm","url":"https://github.com/advisories/GHSA-8c6j-ffmf-q6vm","severity":"HIGH","ecosystem":"Maven","package":"org.apache.struts:struts2-core","vulnerableRanges":[">=2.3.25, <2.3.28.1"],"patched":["2.3.28.1"],"provenance":"source","from":"GHSA"}],"euvd":{"id":"EUVD-2022-3161","url":"https://euvd.enisa.europa.eu/vulnerability/EUVD-2022-3161","exploited":true,"exploitedSince":"2026-10-08","provenance":"source"},"exploits":[{"id":39756,"url":"https://www.exploit-db.com/exploits/39756","title":"Apache Struts - Dynamic Method Invocation Remote Code Execution (Metasploit)","type":"remote","platform":"linux","date":"2016-05-02","verified":true,"provenance":"source"}],"exploitSources":{"exploitdb":{"count":1,"earliest":"2016-05-02"},"metasploit":[{"name":"Apache Struts Dynamic Method Invocation Remote Code Execution","module":"exploit/multi/http/struts_dmi_exec","type":"exploit","disclosureDate":"2016-04-27","url":"https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/multi/http/struts_dmi_exec.rb"}],"nuclei":[{"id":"CVE-2016-3081","name":"Apache S2-032 Struts - Remote Code Execution","severity":"high","path":"http/cves/2016/CVE-2016-3081.yaml","url":"https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2016/CVE-2016-3081.yaml"}],"first":{"date":"2016-04-27","source":"Metasploit","url":"https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/multi/http/struts_dmi_exec.rb"},"provenance":"source"},"exploitRefs":["http://packetstormsecurity.com/files/136856/Apache-Struts-2.3.28-Dynamic-Method-Invocation-Remote-Code-Execution.html","https://www.exploit-db.com/exploits/39756/","https://www.exploit-db.com/exploits/39756"],"flow":[{"stage":"exploitation","techniques":["T1190"],"provenance":"ai"},{"stage":"primary","techniques":["T1059"],"provenance":"ai"}],"timeline":[{"date":"2016-04-26","kind":"published","label":"Published (NVD)","url":"https://nvd.nist.gov/vuln/detail/CVE-2016-3081","provenance":"source"},{"date":"2016-04-27","kind":"exploit-public","label":"First public exploit: Metasploit; later: Exploit-DB 2016-05-02","url":"https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/multi/http/struts_dmi_exec.rb","provenance":"source"},{"date":"2026-07-23","kind":"exploited-reported","label":"Exploitation first reported (VulnCheck KEV evidence)","url":"https://previdian.com/CVE-2016-3081","provenance":"source"},{"date":"2026-10-08","kind":"kev","label":"Added to CISA KEV","url":"https://www.cisa.gov/known-exploited-vulnerabilities-catalog","provenance":"source"},{"date":"2026-10-08","kind":"euvd-exploited","label":"ENISA EUVD: exploited","url":"https://euvd.enisa.europa.eu/vulnerability/EUVD-2022-3161","provenance":"source"}],"speed":{"daysToPublicExploit":1,"firstExploitFrom":"Metasploit","daysToKev":3817},"priority":{"score":73.6,"factors":[{"name":"In a KEV catalog","points":35.0,"detail":"listed in CISA KEV and VulnCheck KEV"},{"name":"Recent KEV listing","points":5.0,"detail":"added 98 days ago"},{"name":"Known ransomware use","points":0.0,"detail":"not known"},{"name":"EPSS percentile","points":19.98,"detail":"percentile 0.9988"},{"name":"Named in threat reports","points":0.0,"detail":"0 reports"},{"name":"Public exploit code","points":5.0,"detail":"2 NVD references tagged Exploit; 1 Exploit-DB entry; 1 advisory exploit reference; 1 Metasploit module; 1 nuclei template"},{"name":"Mentioned in OTX pulses","points":3.0,"detail":"26 pulses"},{"name":"CVSS severity","points":5.67,"detail":"base score 8.1"},{"name":"End-of-life product","points":0.0,"detail":"supported or unknown"}]},"lineage":{"packageHistory":[{"cve":"CVE-2016-3093","published":"2016-06-07","fixed":"2.3.24.3","kev":false},{"cve":"CVE-2016-2162","published":"2016-04-12","fixed":"2.3.28","kev":false,"link":{"from":"CVE-2016-2162","to":"CVE-2016-3081","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"Maven:org.apache.struts:struts2-core","fromFixed":"2.3.28","toFixed":"2.3.28.1","daysApart":14}]}},{"cve":"CVE-2016-4003","published":"2016-04-12","fixed":"2.3.28","kev":false},{"cve":"CVE-2016-3081","published":"2016-04-26","fixed":"2.3.28.1","kev":true},{"cve":"CVE-2016-3082","published":"2016-04-26","fixed":"2.3.28.1","kev":false},{"cve":"CVE-2016-3087","published":"2016-06-07","fixed":"2.3.28.1","kev":false},{"cve":"CVE-2016-4438","published":"2016-07-04","fixed":"2.3.29","kev":false}],"package":"Maven:org.apache.struts:struts2-core"}}