Actively exploited vulnerability

Apache Struts: code execution flaw under attack

CVE-2017-9805 · Apache Struts Deserialization of Untrusted Data Vulnerability

Business software8.1 high

What is affected

Apache Struts is mostly run by companies, schools and public bodies, not on home computers. You are unlikely to have it yourself, but organisations that hold your data may. Breaches that start with flaws like this one are how personal data ends up leaked.

Apache Struts REST Plugin uses an XStreamHandler with an instance of XStream for deserialization without any type filtering, which can lead to remote code execution when deserializing XML payloads.

CISA's description

What an attacker can do

This is a code execution flaw. It lets an attacker run their own commands or programs on the affected system. In practice that usually means taking it over: installing malware, stealing data or using it to reach other devices on the same network.

How it is reached
Over the internet or network
Access the attacker needs
No account needed
Does the victim have to do something?
No, works without the victim doing anything

What to do

  1. At home: nothing to install. Keep your own devices updated and use a different password for every service, so that a breach at one organisation does not open your other accounts.
  2. If you administer Apache Struts at work: apply the vendor's fix or mitigation now and review logs for signs of compromise, because the flaw was being exploited before it was listed.
  3. If the product is past its support date and no fix exists, take it off the internet or retire it.

Apply updates per vendor instructions.

Action required by CISA for US federal agencies

How urgent is it

CISA added this vulnerability to its Known Exploited Vulnerabilities catalogue on November 3, 2021, which means there is reliable evidence of attacks in the wild. US federal agencies must fix it by May 3, 2022, a deadline that has already passed. That deadline does not bind anyone else, but it shows how seriously the agency rates it.

The EPSS model estimates a 99% probability that this flaw will be exploited somewhere in the next 30 days. That is higher than 99.9% of all scored vulnerabilities.

Its CVSS severity score is 8.1 out of 10 (high), as recorded in the US National Vulnerability Database.

Technical description

The REST Plugin in Apache Struts 2.1.1 through 2.3.x before 2.3.34 and 2.5.x before 2.5.13 uses an XStreamHandler with an instance of XStream for deserialization without any type filtering, which can lead to Remote Code Execution when deserializing XML payloads.

NIST National Vulnerability Database
5,442 members already hereReading, writing, commenting and voting. 0 verified · 167 joined this year