ZeroHour

CVE-2017-5638

KEV ransomware PoC ×10mass

Unauthenticated RCE in Apache Struts Jakarta Multipart parser

CISA: Apache Struts Remote Code Execution Vulnerability

CVSS 3.1
9.8 critical
EPSS
100%p100
Published
()
KEV added
AI analysis

CVE-2017-5638 is an improper input validation flaw (CWE-20) in the Jakarta Multipart parser of Apache Struts, in which the parser mishandles the Content-Type value of a file upload and allows malicious upload leading to remote code execution. It is triggered remotely without authentication by sending a crafted Content-Type header in a multipart request to a Struts endpoint; no valid upload or credentials are required. A successful attacker gains code execution in the security context of the application server, which typically enables host compromise, data theft, or ransomware deployment. Any organization running Apache Struts applications that use the Jakarta Multipart parser is affected; the provided data specifies only "Apache Struts" and gives no version ranges. Exploitation is confirmed in the wild: the flaw is listed in CISA KEV (added 2021-11-03) with known ransomware use, EPSS assigns it roughly a 100% exploitation probability (100th percentile), and no public PoC is catalogued in the source data.

What to do: Apply updates per vendor instructions: upgrade Apache Struts to the releases that fix this flaw (2.3.32 / 2.5.10.1 or later, per Apache advisory S2-045), and check for Struts jars bundled inside application packages and vendor appliances. Prioritize internet-facing apps, and as an interim mitigation validate or filter the Content-Type header on multipart requests. Because exploitation is in the wild and ransomware use is known, also review web and application server logs for evidence of successful compromise.

Affected
Apache Struts
Estimated exposure
masslikely hundreds of thousands of deployments (tens of thousands of Struts hosts were internet-exposed in public scans) — Public internet scans around the time of disclosure counted tens of thousands of hosts exposing Struts-based applications, and Struts is embedded in a very large share of enterprise Java web applications, so total affected deployments…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

The Jakarta Multipart parser in Apache Struts 2 2.3.x before 2.3.32 and 2.5.x before 2.5.10.1 has incorrect exception handling and error-message generation during file-upload attempts, which allows remote attackers to execute arbitrary commands via a crafted Content-Type, Content-Disposition, or Content-Length HTTP header, as exploited in the wild in March 2017 with a Content-Type header containing a #cmd= string.

CISA Known Exploited Vulnerability
Affected
Apache Struts
Required action
Apply updates per vendor instructions.
Due date
Ransomware use
Known
Vendors
apacheibmlenovohporaclearubanetworksnetapp
Products
struts, storwize v3500 firmware, storwize v5000 firmware, storwize v7000 firmware, storage v5030 firmware, server automation, weblogic server, clearpass policy manager, oncommand balance
Weakness
CWE-755
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

In the news