CVE-2017-9805 kev in the critical feed json
REST Plugin in Apache Struts uses an XStreamHandler with an instance of XStream for deserialization without any type filtering
published 2017-09-15 9 y ago modified 2026-06-17 4 mo ago also GHSA-gg9m-fj3v-r58c , EUVD-2018-0602
- cvss
- 8.1
- version 3.1, CNA
- cisa kev
- Exploited
- added 2021-11-03
- epss
- 99.4%
- EPSS 99.4% chance of exploitation in 30 days, percentile 99.9%
- public exploits
- 2
- Metasploit, Exploit-DB, plus a Nuclei check
Summary
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.
Patch / fix
cisa required action Apply updates per vendor instructions.
- maven org.apache.struts:struts2-rest-plugin 2.3.34, 2.5.13
- apache struts 2.3.34, 2.5.13
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2017-9805 updated cvss 8.1
struts: RCE attack via REST plugin with XStream handler to deserialise XML requests
-
Red Hat Enterprise Linux 5 struts Red Hat JBoss Data Virtualization 6 struts struts Red Hat JBoss Fuse Service Works 6 struts struts Red Hat JBoss Operations Network 3 struts struts Red Hat Satellite 5 strutsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Timeline
- First public exploit (Metasploit exploit/multi/http/struts2_rest_xstream)
- Published
- Added to CISA KEV
- CISA patch deadline
- CISA SSVC: exploitation active
Known exploited
- Added
- 5 y ago
- Patch by
- 2022-05-03 (4 y ago)
- Ransomware
- Not known
- Required action
- Apply updates per vendor instructions.
- Vendor, product
- Apache, Struts
- CISA name
- Apache Struts Deserialization of Untrusted Data Vulnerability
ATT&CK techniques
How it is exploited and what it leads to, in MITRE ATT&CK terms.
- T1190 Exploit Public-Facing Application exploitation
- T1059 Command and Scripting Interpreter primary impact
kev release 2025-07-28, att&ck v16.1. KEV to ATT&CK mappings by the MITRE Center for Threat-Informed Defense (Mappings Explorer, Apache-2.0). © 2026 The MITRE Corporation. This work is reproduced and distributed with the permission of The MITRE Corporation. Terms of use
CISA SSVC
- Exploitation
- Active, exploited in the wild
- Automatable
- no
- Technical impact
- total
- Assessed
- 21 mo ago
Exploit prediction
99.40% chance of exploitation in the next 30 days, higher than 99.9% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- Metasploit exploit/multi/http/struts2_rest_xstream Apache Struts 2 REST Plugin XStream RCE metasploit exploit, excellent rank, 2017-09-05
- EDB-42627 Apache Struts 2.5 < 2.5.12 - REST Plugin XStream Remote Code Execution remote, 2017-09-06
- Nuclei template Apache Struts2 S2-052 - Remote Code Execution nuclei detection template
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CISA ADP | 3.1 | 8.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
| NVD | 3.1 | 8.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CNA | 3.1 | 8.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 6.8 | AV:N/AC:M/Au:N/C:P/I:P/A:P |
| GitHub | 3.0 | 8.1 | CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H/E:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | org.apache.struts:struts2-rest-plugin | >=2.1.1, <2.3.34 >=2.5.0, <2.5.13 |
2.3.34 2.5.13 |
Affected products
- Apache Software Foundation Apache Struts
Classification
- Weakness
-
- CWE-502 Deserialization of Untrusted Data
References
-
oracle.com
/technetwork/security-advisory/alert-cve-2017-9805-3889403.html
web, patch, third-party-advisory
-
github.com
/apache/struts/commit/19494718865f2fb7da5ea363de3822f87fbda26
web
-
github.com
/apache/struts/commit/6dd6e5cfb7b5e020abffe7e8091bd63fe97c10a
web
-
exploit-db.com
/exploits/42627/
exploit, third-party-advisory, vdb-entry
-
tools.cisco.com
/security/center/content/CiscoSecurityAdvisory/cisco-sa-20170907-struts2
vendor-advisory, web, third-party-advisory
-
struts.apache.org
/docs/s2-052.html
web, mitigation, vendor-advisory
-
blogs.apache.org
/foundation/entry/apache-struts-statement-on-equifax
web, vendor-advisory
-
cwiki.apache.org
/confluence/display/WW/S2-052
web, mitigation, vendor-advisory
-
securitytracker.com
/id/1039263
vdb-entry, web, broken-link, third-party-advisory
-
securityfocus.com
/bid/100609
vdb-entry, web, broken-link, third-party-advisory
-
bugzilla.redhat.com
/show_bug.cgi?id=1488482
web, issue-tracking, third-party-advisory, vdb-entry
-
lgtm.com
/blog/apache_struts_CVE-2017-9805
web, broken-link
-
security.netapp.com
/advisory/ntap-20170907-0001/
third-party-advisory
-
kb.cert.org
/vuls/id/112992
third-party-advisory, web, us-government-resource
-
cisa.gov
/known-exploited-vulnerabilities-catalog?field_cve=CVE-2017-9805
government-resource, web, us-government-resource
-
nvd.nist.gov
/vuln/detail/CVE-2017-9805
advisory
-
github.com
/apache/struts
package
-
security.netapp.com
/advisory/ntap-20170907-0001
web
-
web.archive.org
/web/20170909031344/http://www.securityfocus.com/bid/100609
web
-
web.archive.org
/web/20170922053119/http://www.securitytracker.com/id/1039263
web
-
exploit-db.com
/exploits/42627
web
Sources
- CVE List CVE-2017-9805
- GitHub Advisory GHSA-gg9m-fj3v-r58c
- NVD CVE-2017-9805
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.