Description
The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during certain exception handling for mismatched data types of properties, which allows remote attackers to execute arbitrary Java code via a crafted parameter.
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 Remote Command Execution
exploit/multi/http/struts_code_exec_exception_delegator
Exploit-DB 2
- Apache Struts 2.2.1.1 - Remote Command Execution (Metasploit) EDB-18984 · remote · Jun 5, 2012 · verified
- Apache Struts 2 < 2.3.1 - Multiple Vulnerabilities EDB-18329 · webapps · Jan 6, 2012 · verified
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Maven | org.apache.struts:struts2-core | < 2.2.3.1 | 2.2.3.1 | GHSA-4wrr-9h5r-m92w |
| Maven | org.apache.struts.xwork:xwork-core | < 2.2.3.1 | 2.2.3.1 | GHSA-4wrr-9h5r-m92w |
References
- 18329 exploit
- 20120105 SEC Consult SA-20120104-0 :: Multiple critical vulnerabilities in Apache Struts2 mailing-list
- http://struts.apache.org/2.x/docs/version-notes-2311.html
- http://struts.apache.org/2.x/docs/s2-008.html
- https://www.sec-consult.com/files/20120104-0_Apache_Struts2_Multiple_Critical_Vulnerabilities.txt
- https://issues.apache.org/jira/browse/WW-3668
- 47393 third-party-advisory