Vigilbase CVEConnect your agent

Apache Struts Deserialization of Untrusted Data Vulnerability

Exploited · KEV 2021-11-03Metasploit moduleCVE-2017-9805CWE-502

Exploited since 2021-11-03. 2 of 8 rule sources name it. Our CRS test: blocked.

Edge rules
2/8
Our test
Blocked
CVSS
8.1
EPSS
99.4% Top 0.1%
Posts, 14d
02026-10-20: 0 posts2026-10-21: 0 posts2026-10-22: 0 posts2026-10-23: 0 posts2026-10-24: 0 posts2026-10-25: 0 posts2026-10-26: 0 posts2026-10-27: 0 posts2026-10-28: 0 posts2026-10-29: 0 posts2026-10-30: 0 posts2026-10-31: 0 posts2026-11-01: 0 posts2026-11-02: 0 posts
Published
2017-09-15
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… More

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.

Ask Vigil

AI · answers from this page
Ask about CVE-2017-9805: who's covered, what to patch first, how vendors compare. I cite sources and won't help with attacks.

Workers AI (Llama 3.3). Can be wrong: check the cited source.

Severity, decoded

CVSS 3.1
High · 8.1 / 10

Exploitable over the network under specific conditions, with no privileges and no user interaction, leading to full loss of confidentiality, integrity and availability.

Over the internetNo login neededNo user actionHard to pull offFull compromise
How the score is built8 metrics
  • Attack vectorAn attacker can reach it over the internet; no access to your network needed.
    Network
  • Attack complexityThe attack only works when conditions outside the attacker's control line up.
    High
  • Privileges requiredNo account or login is needed.
    None
  • User interactionNo one has to click or open anything; the attack works on its own.
    None
  • ScopeThe damage stays within the vulnerable component.
    Unchanged
  • Confidentiality impactAn attacker can read all data the affected component holds, or the most sensitive parts of it.
    High
  • Integrity impactAn attacker can change any data or files the affected component protects.
    High
  • Availability impactAn attacker can take the component down completely or keep it from serving anyone.
    High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
CISA's assessmentSSVC, from the CVE record
ExploitationActive

Attackers are exploiting this in the wild.

AutomatableNo

At least one step needs hands-on work, which slows mass attacks.

Technical impactTotal

A successful attack gives full control over the affected software or all of its data.

Public exploits

3 found
1 Metasploit1 Exploit-DB1 Scanner template0 GitHub PoCs

Links are to third-party code: never run it outside an isolated lab.

Timeline

  1. 2017-09-05
    Metasploit module published
    Apache Struts 2 REST Plugin XStream RCE
  2. 2017-09-06
    Exploit published on Exploit-DB
    Apache Struts 2.5 < 2.5.12 - REST Plugin XStream Remote Code Execution
  3. 2017-09-15
    CVE published
    CVE List
  4. 2021-11-03
    Added to CISA KEV
    Confirmed exploitation in the wild
  5. 2026-11-02
    Our test: OWASP Core Rule Set blocked it
    paranoia level 1, anomaly threshold 5, default CRS settings
  6. 2026-11-02
    Our test: OWASP Core Rule Set blocked it
    paranoia level 2, anomaly threshold 5, default CRS settings

Social

2026-10-20: 0 posts2026-10-21: 0 posts2026-10-22: 0 posts2026-10-23: 0 posts2026-10-24: 0 posts2026-10-25: 0 posts2026-10-26: 0 posts2026-10-27: 0 posts2026-10-28: 0 posts2026-10-29: 0 posts2026-10-30: 0 posts2026-10-31: 0 posts2026-11-01: 0 posts2026-11-02: 0 posts

No posts seen yet on X, Bluesky, Mastodon, Hacker News or GitHub.

Vendor statements

Quoted
CloudflareWAF Managed RulesBefore feed history

The CVE predates the oldest entry in this vendor's public feed, so a rule may exist that we cannot see.

AWSAWS WAF Managed RulesBefore feed history

The CVE predates the oldest entry in this vendor's public feed, so a rule may exist that we cannot see.

Microsoft AzureFront Door and Application Gateway WAF (DRS)1 quoteRule published
UndatedListed944110Source
Rule 944110: Critical - 5 · 1 · Remote Command Execution: Java process spawn (CVE-2017-9805)
Google CloudCloud Armor preconfigured WAF rules2 quotesRule published
UndatedListed…110-javaSource
Signature owasp-crs-v042200-id944110-java (sensitivity 1): Remote command execution: Java process spawn (CVE-2017-9805)
UndatedListed…110-javaSource
Signature owasp-crs-v030301-id944110-java (sensitivity 1): Remote command execution: Java process spawn (CVE-2017-9805)
FastlyNext-Gen WAF virtual patchesBefore feed history

The CVE predates the oldest entry in this vendor's public feed, so a rule may exist that we cannot see.

F5Attack signatures (Distributed Cloud WAF)Before feed history

The CVE predates the oldest entry in this vendor's public feed, so a rule may exist that we cannot see.

AkamaiApp & API Protector (Adaptive Security Engine)No public source

This vendor publishes no machine-readable rule changelog we can check.

OWASP CRSCore Rule Set (open source, used inside many WAFs)Before feed history

The CVE predates the oldest entry in this vendor's public feed, so a rule may exist that we cannot see.