Skip to content
Fencer Vulns
critical 9.8

CVE-2017-9791 kev in the critical feed json

Code execution in Apache Struts 1 plugin

published 2017-07-10 9 y ago modified 2026-06-17 4 mo ago also GHSA-29rm-6752-gvwv , EUVD-2022-1954

cvss
9.8
version 3.1, CNA
cisa kev
Exploited
added 2022-02-10
epss
98.9%
EPSS 98.9% chance of exploitation in 30 days, percentile 99.9%
public exploits
3
Metasploit, Exploit-DB, plus a Nuclei check

Summary

The Struts 1 plugin in Apache Struts 2.1.x and 2.3.x might allow remote code execution via a malicious field value passed in a raw message to the ActionMessage.

Patch / fix

cisa required action Apply updates per vendor instructions.

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-9791 updated cvss 8.1

struts2: Possible RCE via a malicious field value passed in a raw message to the ActionMessage

  • Red Hat JBoss Fuse Service Works 6 struts2-core struts2-core
    not 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

  1. First public exploit (Metasploit exploit/multi/http/struts2_code_exec_showcase)
  2. Published
  3. Added to CISA KEV
  4. CISA patch deadline
  5. CISA SSVC: exploitation active

Known exploited

Added
4 y ago
Patch by
2022-08-10 (4 y ago)
Ransomware
Not known
Required action
Apply updates per vendor instructions.
Vendor, product
Apache, Struts 1
CISA name
Apache Struts 1 Improper Input Validation Vulnerability

CISA SSVC

Exploitation
Active, exploited in the wild
Automatable
yes
Technical impact
total
Assessed
21 mo ago

Exploit prediction

98.91% chance of exploitation in the next 30 days, higher than 99.9% of all scored CVEs (FIRST EPSS, 2026-11-08).

Exploits and checks

CVSS scores

assigned by version score vector
CISA ADP 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CNA 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD 2.0 7.5 AV:N/AC:L/Au:N/C:P/I:P/A:P
GitHub 3.1 9.8 CVSS:3.1/AV:N/AC:L/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-struts1-plugin
<=2.3.37
no fix listed

Affected products

  • Apache Software Foundation Apache Struts

Classification

Weakness
  • CWE-20 Improper Input Validation

References

Sources

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.