module

Apache Struts ClassLoader Manipulation Remote Code Execution

Disclosed
Mar 6, 2014
Created
May 30, 2018

Description

This module exploits a remote command execution vulnerability in Apache Struts versions
1.x ( the ActionForm bean population mechanism while in case of Struts 2.x the vulnerability is due
to the ParametersInterceptor. Both allow access to 'class' parameter that is directly
mapped to getClass() method and allows ClassLoader manipulation. As a result, this can
allow remote attackers to execute arbitrary Java code via crafted parameters.

Authors

Mark Thomas
Przemyslaw Celej
Redsadic [email protected]
Matthew Hall [email protected]

Platform

Linux,Windows

Architectures

java, x86

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/struts_code_exec_classloader
msf exploit(struts_code_exec_classloader) > show targets
...targets...
msf exploit(struts_code_exec_classloader) > set TARGET < target-id >
msf exploit(struts_code_exec_classloader) > show options
...show and set options...
msf exploit(struts_code_exec_classloader) > exploit

Title
Rapid7 Labs

2026 Global Threat Landscape Report

The predictive window has collapsed. Exploitation follows disclosure in days. See how attackers are accelerating and how to stay ahead.