Remote Command Execution in Apache Struts 2 due to Improper Error Handling
CVE-2017-5638
Key Information:
- Vendor
- Apache
- Status
- Vendor
- CVE Published:
- 11 March 2017
Badges
Summary
The Jakarta Multipart parser in Apache Struts 2 is flawed in handling exceptions and generating error messages during file uploads. This vulnerability exposes the application to potential remote command execution by allowing attackers to send specially crafted HTTP headers—namely Content-Type, Content-Disposition, or Content-Length. This flaw was actively exploited in March 2017, whereby an attacker could inject commands via a manipulated Content-Type header, specifically using a '#cmd=' string. It is essential for users of affected versions to apply the necessary patches and updates to safeguard against such attacks.
CISA Reported
CISA provides regional cyber and physical services to support security and resilience across the United States. CISA monitor the most dangerious vulnerabilities and have identifed as being exploited and is known by the CISA as enabling ransomware campaigns.
The CISA's recommendation is: Apply updates per vendor instructions.
Affected Version(s)
Apache Struts 2.3.x before 2.3.32
Apache Struts 2.5.x before 2.5.10.1
Exploit Proof of Concept (PoC)
PoC code is written by security researchers to demonstrate the vulnerability can be exploited. PoC code is also a key component for weaponization which could lead to ransomware.
References
EPSS Score
94% chance of being exploited in the next 30 days.
CVSS V3.1
Timeline
- 🟡
Public PoC available
- 💰
Used in Ransomware
- 👾
Exploit known to exist
- 🦅
CISA Reported
Vulnerability published
Vulnerability Reserved