Apache · Struts
CVE-2017-5638
Apache Struts Remote Code Execution Vulnerability
What it is
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: Apache Struts Jakarta Multipart parser allows for malicious file upload using the Content-Type value, leading to remote code execution.
What to do
Apply updates per vendor instructions.
Deadline for US federal agencies: May 3, 2022
- Added to the CISA list
- November 3, 2021
- Published
- March 11, 2017
- Severity
- Critical 9.8 CVSS 3.1
- Chance of attacks in the next 30 days (EPSS)
- >99.9% in the top 0.1% of all known vulnerabilities
- Weakness
- CWE-20
- More details
- NVD · CVE.org · CISA
All references (20)
- https://nmap.org/nsedoc/scripts/http-vuln-cve2017-5638.html
- http://www.arubanetworks.com/assets/alert/ARUBA-PSA-2017-002.txt
- https://arstechnica.com/security/2017/03/critical-vulnerability-under-massive-attack-imperils-high-impact-sit…
- https://exploit-db.com/exploits/41570
- https://security.netapp.com/advisory/ntap-20170310-0001/
- https://github.com/rapid7/metasploit-framework/issues/8064
- https://struts.apache.org/docs/s2-046.html
- http://blog.talosintelligence.com/2017/03/apache-0-day-exploited.html
- https://www.imperva.com/blog/2017/03/cve-2017-5638-new-remote-code-execution-rce-vulnerability-in-apache-stru…
- https://h20566.www2.hpe.com/hpsc/doc/public/display?docLocale=en_US&docId=emr_na-hpesbgn03733en_us
- https://www.kb.cert.org/vuls/id/834067
- https://isc.sans.edu/diary/22169
- https://struts.apache.org/docs/s2-045.html
- http://www.securitytracker.com/id/1037973
- http://www.eweek.com/security/apache-struts-vulnerability-under-attack.html
- http://www.securityfocus.com/bid/96729
- https://twitter.com/theog150/status/841146956135124993
- https://github.com/mazen160/struts-pwn
- https://packetstormsecurity.com/files/141494/S2-45-poc.py.txt
- https://www.symantec.com/security-center/network-protection-security-advisories/SA145
More exploited flaws from Apache
| Added | Vulnerability | Product | Severity | Attack chance |
|---|---|---|---|---|
| Oct 8, 2026 | Command Injection | Struts | High 8.1 | 97% |
| Mar 25, 2022 | Improper Input Validation | Struts | Critical 9.8 | >99.9% |
| Nov 3, 2021 | Deserialization of Untrusted Data | Struts | High 8.1 | 99.4% |
| Nov 3, 2021 | Remote Code Execution | Struts | High 8.1 | >99.9% |
| Nov 3, 2021 | Remote Code Execution | Struts | Critical 9.8 | 96% |
| Aug 4, 2026 | Missing Encryption of Sensitive Data | Tomcat | High 7.5 | 99% |
| Apr 16, 2026 | Improper Input Validation | ActiveMQ | High 8.8 | 98% |
| May 1, 2025 | Improper Escaping of Output | HTTP Server | Critical 9.1 | >99.9% |
Sources: Known Exploited Vulnerabilities (CISA, public domain), CVE records (cve.org) and EPSS (FIRST). The chance of attacks is the EPSS estimate that someone will try to exploit the flaw in the next 30 days.