Description
The Struts 1 plugin in Apache Struts 2.1.x and 2.3.x might allow remote code execution via a malicious field value passed in a raw message to the ActionMessage.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Apache Software Foundation | Apache Struts | 2.1.x series, 2.3.x series | — |
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
Metasploit 1 module
-
Apache Struts 2 Struts 1 Plugin Showcase OGNL Code Execution
exploit/multi/http/struts2_code_exec_showcase
Exploit-DB 2
- Apache Struts 2 - Struts 1 Plugin Showcase OGNL Code Execution (Metasploit) EDB-44643 · remote · May 17, 2018 · verified
- Apache Struts 2.3.x Showcase - Remote Code Execution EDB-42324 · webapps · Jul 7, 2017 · verified
GitHub 3 repositories
-
dragoneeg/Struts2-048 ★ 27 · Jul 7, 2017
CVE-2017-9791
-
IanSmith123/s2-048 ★ 2 · Jul 7, 2017
Apache struts struts 2 048, CVE-2017-9791.
-
xfer0/CVE-2017-9791 ★ 0 · Sep 23, 2017
Metasploit module for Apache Struts CVE-2017-9791 Remote Code Execution Vulnerability
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
Automated scanner template
A ready-made Nuclei template detects this vulnerability automatically. Vulnerabilities with public scanner templates are typically probed across the internet soon after the template appears — exposed systems should be patched first.
- Apache Struts2 S2-053 - Remote Code Execution http/cves/2017/CVE-2017-9791.yaml
Source: projectdiscovery/nuclei-templates (MIT) — updated daily. Only links are listed.
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Maven | org.apache.struts:struts2-struts1-plugin | <= 2.3.37 | — | GHSA-29rm-6752-gvwv |