CVE-2017-9805
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…
- 8.1HighCVSS base score
- 99.4%Exploitation in 30 daysEPSS · top 0.1% of all CVEs
- YesKnown exploitedin CISA's KEV since 3 Nov 2021
- 3Public exploitsMetasploit, Nuclei and Exploit-DB
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.
Exploited in the wild
CISA lists this vulnerability in its Known Exploited Vulnerabilities catalog as Apache Struts Deserialization of Untrusted Data Vulnerability.
- Added
- 3 Nov 2021
- Fix due (US federal)
- 3 May 2022
- Used by ransomware
- Not known
Apply updates per vendor instructions.
ENISA's EU Vulnerability Database lists it as exploited, from CISA's KEV, since 3 Nov 2021.
Public exploit
An exploit or proof of concept is public: anyone can try it against an unpatched system. The public collections list a Metasploit module, a Nuclei template and an Exploit-DB entry for it. A reference of the record is tagged as an exploit. CISA's SSVC rates its exploitation: it is being exploited.
Show the exploits4
Metasploit modules1 module
- Apache Struts 2 REST Plugin XStream RCE (Metasploit module) (opens in a new tab)
exploit/multi/http/struts2_rest_xstreamRank excellentdisclosed 5 Sept 2017
Nuclei templates1 template
- Apache Struts2 S2-052 - Remote Code Execution (Nuclei template) (opens in a new tab)
http/cves/2017/CVE-2017-9805.yamlSeverity high
Exploit-DB1 entry
- Apache Struts 2.5 < 2.5.12 - REST Plugin XStream Remote Code Execution (Exploit-DB entry) (opens in a new tab)
EDB-ID 42627remote, linuxpublished 6 Sept 2017Not verified
References tagged exploit1 reference
- 42627 (opens in a new tab)exploitx_refsource_EXPLOIT-DBx_transferred
Modules, templates and exploits as listed by the Metasploit Framework (BSD-3-Clause), ProjectDiscovery's Nuclei templates (MIT) and the Exploit Database (GPLv2), read once a day. Where the data comes from
Timeline
ID reserved
By apache
- 3 months later
· 3 months later
Published
- 4 years later
· 4 years later
Added to CISA KEV
Known exploited in the wild
- 4 years later
· 4 years later
Record updated
Changes after publication (a new score, a public exploit, EPSS crossing 1, 10 or 50 %, leaving KEV) are kept since November 2026; earlier ones are not known.
Scores
| Scored by | CVSS | Score | Vector |
|---|---|---|---|
| CISA-ADPADP (enrichment) | 3.1 | High8.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
| NVDNVD · Analyzed | 3.1 | High8.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
- EPSS (exploitation in 30 days)
- 99.4% · top 0.1% of all CVEs (9 Nov 2026)
- CISA SSVC
- Exploitation: active · Automatable: no · Technical impact: total
The list uses the assigner's score when there is one, then CISA's, then NVD's: High 8.1.
Affected products
Apache Software Foundation · Apache Struts
- affected Apache Struts before 2.3.34 and 2.5.x before 2.5.13
Affected packages
From reviewed advisories of the GitHub Advisory Database.
- Mavenorg.apache.struts:struts2-rest-pluginGHSA-gg9m-fj3v-r58c (opens in a new tab)
References
13
- http://www.oracle.com/technetwork/security-advisory/alert-cve-2017-9805-3889403.html (opens in a new tab)x_refsource_CONFIRMx_transferred
- https://struts.apache.org/docs/s2-052.html (opens in a new tab)x_refsource_CONFIRMx_transferred
- 1039263 (opens in a new tab)vdb-entryx_refsource_SECTRACKx_transferred
- 100609 (opens in a new tab)vdb-entryx_refsource_BIDx_transferred
- 20170907 Multiple Vulnerabilities in Apache Struts 2 Affecting Cisco Products: September 2017 (opens in a new tab)vendor-advisoryx_refsource_CISCOx_transferred
- https://bugzilla.redhat.com/show_bug.cgi?id=1488482 (opens in a new tab)x_refsource_CONFIRMx_transferred
- https://blogs.apache.org/foundation/entry/apache-struts-statement-on-equifax (opens in a new tab)x_refsource_CONFIRMx_transferred
- 42627 (opens in a new tab)exploitx_refsource_EXPLOIT-DBx_transferred
- https://lgtm.com/blog/apache_struts_CVE-2017-9805 (opens in a new tab)x_refsource_MISCx_transferred
- https://cwiki.apache.org/confluence/display/WW/S2-052 (opens in a new tab)x_refsource_CONFIRMx_transferred
- https://security.netapp.com/advisory/ntap-20170907-0001/ (opens in a new tab)x_refsource_CONFIRMx_transferred
- VU#112992 (opens in a new tab)third-party-advisoryx_refsource_CERT-VNx_transferred
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2017-9805 (opens in a new tab)government-resource
Sources
The same CVE in the primary databases and aggregators, to check against.
- CVE.org record (opens in a new tab)
- CVE List JSON (GitHub) (opens in a new tab)
- NVD (opens in a new tab)
- CISA KEV catalog (opens in a new tab)
- FIRST EPSS (opens in a new tab)
- EUVD EUVD-2018-0602 (opens in a new tab)
- OSV.dev (opens in a new tab)
- GitHub Advisory GHSA-gg9m-fj3v-r58c (opens in a new tab)
- CIRCL Vulnerability-Lookup (opens in a new tab)
Badge for a README or a ticket
[](https://cveledger.app/cve/CVE-2017-9805)Record last updated .