Rapid7 Vulnerability & Exploit Database

Apache Struts 2 Namespace Redirect OGNL Injection

Back to Search

Apache Struts 2 Namespace Redirect OGNL Injection



This module exploits a remote code execution vulnerability in Apache Struts version 2.3 - 2.3.4, and 2.5 - 2.5.16. Remote Code Execution can be performed via an endpoint that makes use of a redirect action. Note that this exploit is dependant on the version of Tomcat running on the target. Versions of Tomcat starting with 7.0.88 currently don't support payloads larger than ~7.5kb. Windows Meterpreter sessions on Tomcat >=7.0.88 are currently not supported. Native payloads will be converted to executables and dropped in the server's temp dir. If this fails, try a cmd/* payload, which won't have to write to the disk.


  • Man Yue Mo
  • hook-s3c
  • asoto-r7
  • wvu <wvu@metasploit.com>


Module Options

To display the available options, load the module within the Metasploit console and run the commands 'show options' or 'show advanced':

msf > use exploit/multi/http/struts2_namespace_ognl
msf exploit(struts2_namespace_ognl) > show targets
msf exploit(struts2_namespace_ognl) > set TARGET < target-id >
msf exploit(struts2_namespace_ognl) > show options
    ...show and set options...
msf exploit(struts2_namespace_ognl) > exploit

Time is precious, so I don’t want to do something manually that I can automate. Leveraging the Metasploit Framework when automating any task keeps us from having to re-create the wheel as we can use the existing libraries and focus our efforts where it matters.

– Jim O’Gorman | President, Offensive Security