CVE-2017-5638

Apache Struts: Remote Code Execution

As of , CVE-2017-5638 in Apache Struts is on CISA's list of exploited vulnerabilities: CISA listed it on . Our patch-first group: Patch this week.

Exploited
Yes: CISA listed it on 3 November 2021
US federal deadline
3 May 2022181 days after CISA listed it. US federal civilian agencies must fix it by then.
Used in ransomware campaigns
Known
EPSS score
0.99Higher than 99% of the CVEs EPSS scores. EPSS estimates the chance of exploitation activity in the next 30 days.
EPSS when listed
Not availableCISA listed it before 4 February 2022, where the EPSS files we read begin.
Public exploit
1 Metasploit module and 2 Exploit-DB entries (2 verified)
Fix
No vendor link in CISA's entry

What CISA says to do

Apply updates per vendor instructions.

CISA's required action

What the flaw is

Apache Struts Jakarta Multipart parser allows for malicious file upload using the Content-Type value, leading to remote code execution.

CISA's 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.

The CVE record's description, from apache

CVE published
11 March 2017
Assigned by
apache
CVSS
9.8 Critical (CVSS 3.1, from CISA-ADP)
CWE-755
Improper Handling of Exceptional Conditions
CWE-20
Improper Input Validation
CISA SSVC, exploitation
active
CISA SSVC, automatable
yes
CISA SSVC, technical impact
total

Timeline

  1. Exploit-DB published an exploit (EDB-ID 41570).
  2. The CVE record was published.
  3. Exploit-DB published an exploit (EDB-ID 41614).
  4. CISA added it to its list of exploited vulnerabilities.
  5. The US federal deadline to fix it.

Public exploits

Facts from Metasploit's module list and Exploit-DB's index; we never copy exploit code.

Struts: other exploited entries

VulnerabilityProductOur groupListedDeadlineEPSS
CVE-2013-2251Improper Input ValidationApache StrutsPatch this weekMetasploit module; EPSS 0.99; verified Exploit-DB entry0.99
CVE-2018-11776Remote Code ExecutionApache StrutsPatch this weekMetasploit module; EPSS 0.99; verified Exploit-DB entry0.99
CVE-2017-9805Deserialization of Untrusted DataApache StrutsPatch this weekMetasploit module; EPSS 0.990.99
CVE-2020-17530Remote Code ExecutionApache StrutsPatch this weekMetasploit module; EPSS 0.960.96

Read further