# CVE-2017-9805: Apache Struts - RCE

> Live exploitation tracking for CVE-2017-9805 by the CrowdSec Live Exploit Tracker, built from real-world attack data crowdsourced from CrowdSec's global network.

Page: https://tracker.crowdsec.net/cves/CVE-2017-9805

## Key facts

- **Exploitation phase:** Limited Exploitation. The vulnerability is known but shows very limited attacker interest or exploitation activity.
- **CVSS score:** 8.1
- **Public exploit available:** Yes
- **Affected products:** Apache Struts
- **Weaknesses:** CWE-502 (Deserialization of Untrusted Data)
- **Tags:** java

## 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.

## CrowdSec analysis

[CVE-2017-9805](https://euvd.enisa.europa.eu/vulnerability/CVE-2017-9805) is a critical vulnerability in the REST Plugin of Apache Struts versions 2.1.1 through 2.3.x before 2.3.34 and 2.5.x before 2.5.13, where unsafe deserialization of XML payloads via XStreamHandler can lead to remote code execution. Attackers can exploit this flaw to execute arbitrary code on the affected server, potentially leading to full system compromise and further attacks within the network.

CrowdSec has been tracking this vulnerability and its exploits since 30th of June 2025.

According to CrowdSec data, while opportunistic exploitation dominates, a portion of threat actors trying to exploit CVE-2017-9805 apply basic targeting methods such as port or service detection. This indicates emerging patterns of selective targeting.
CrowdSec data also reveals a clear uptick in attacks involving CVE-2017-9805 over the past week. Activity is above the usual baseline, suggesting growing attention from attackers. This may reflect rising awareness, recent exploit releases, or expanded targeting efforts.

Attackers exploit this vulnerability by sending crafted POST requests with malicious XML payloads to `/struts2-rest-showcase/orders/` endpoints, leading to remote code execution via unsafe deserialization.

## Timeline

- 2017-09-15: CVE Published. CVE-2017-9805 is published to NVD.
- 2021-11-03: CISA KEV. CVE-2017-9805 is added to the Known Exploited Vulnerabilities catalog by CISA.
- 2022-05-03: CISA Remediation Deadline. Expiration of the CISA remediation deadline as described in [BOD 22-01](https://www.cisa.gov/news-events/directives/bod-22-01-reducing-significant-risk-known-exploited-vulnerabilities).
- 2025-06-30: Rule Released. CrowdSec releases a rule to detect CVE-2017-9805 exploitation attempts against the CrowdSec Network.
- 2025-07-07: CrowdSec First Seen. CrowdSec observes in-the-wild exploitation of CVE-2017-9805 for the first time.

## References

- https://www.exploit-db.com/exploits/42627/
- http://www.securityfocus.com/bid/100609
- https://www.kb.cert.org/vuls/id/112992
- https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20170907-struts2
- https://blogs.apache.org/foundation/entry/apache-struts-statement-on-equifax
- http://www.securitytracker.com/id/1039263
- https://cwiki.apache.org/confluence/display/WW/S2-052
- https://lgtm.com/blog/apache_struts_CVE-2017-9805
- https://security.netapp.com/advisory/ntap-20170907-0001/
- https://struts.apache.org/docs/s2-052.html
- http://www.oracle.com/technetwork/security-advisory/alert-cve-2017-9805-3889403.html
- https://bugzilla.redhat.com/show_bug.cgi?id=1488482

## Live exploitation data

The [Live Exploit Tracker page](https://tracker.crowdsec.net/cves/CVE-2017-9805) follows observed exploitation activity for CVE-2017-9805. [Request an API key](https://tracker.crowdsec.net/request-api-key) for full access to its exploitation timeline, attacking IP addresses and blocklists.
