CVE-2017-9791

CRITICALNVD 9.89.8—
EchelonGraph scoreHIGH confidence

Score elevated to 9.8 because this CVE is listed on the CISA Known Exploited Vulnerabilities catalog (added 2022-02-10), indicating real-world exploitation has been confirmed by US federal agencies. NVD baseline CVSS 9.8 retained for reference. Confidence: HIGH.

Triggered by: CISA KEV (actively exploited)
Sources: cisa_kev, epss, ghsa, nvd
Trending — 3 sources updated this weekExploited in the wild
9.8EG
EchelonGraph verdictPatch nowTreat as an emergency — this is being exploited.
  • Actively exploited in the wild (CISA-KEV)
CISA-KEV: ExploitedEPSS PROB: 99%CVSS: 9.8Exploit: cisa kev · ssvc active · Metasploit · Exploit-DB (verified) · epss top5pct · epss high · public exploitExposed services: Not assessed

A fixed version is listed under Patch Availability — apply it.

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.

CVSS v3
9.8
EG Score
9.8CRITICALhigh confidence
EG Risk
99
EG Risk 99/100CISA SSVC

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity98% × 45%
Exploitation100% × 40%
Automatability100% × 15%
CISA SSVC: Attend at low mission impact; Act at medium or high.
Action: A fixed version is listed under Patch Availability. Apply it sooner than your standard update timelines at low mission impact and as soon as possible at medium or high.
EPSS PROB
99%
EPSS %ILE
99th
KEV
⚠ Exploited

CISA SSVCAttend at low mission impact; Act at medium or high.

A fixed version is listed under Patch Availability. Apply it sooner than your standard update timelines at low mission impact and as soon as possible at medium or high.

Exploitation active (CISA Vulnrichment) · Automatable yes (CISA Vulnrichment) · Technical impact total (CISA Vulnrichment). Mission impact is CISA's Mission & Well-being decision point, and only you can judge it: high means the affected system is essential to your organisation's mission, or its compromise could cause irreversible harm to people. CISA's decision table

Published

July 10, 2017

Last Modified

June 17, 2026

Advisory Details (6)

Auto-updated Oct 5, 2026
⚠️ Active exploitation confirmed. Fixed version listed under Patch Availability.
generic🔴 Active Exploitation

CVE-2017-9791 - PSIRT.COM

http://www.securityfocus.com/bid/99484
generic🟡 PoC Available

Apache Struts 2 - Struts 1 Plugin Showcase OGNL Code Execution (Metasploit) - Multiple remote Exploit

https://www.exploit-db.com/exploits/44643/
generic🟡 PoC Available

Apache Struts 2.3.x Showcase - Remote Code Execution - Multiple webapps Exploit

https://www.exploit-db.com/exploits/42324/
generic

S2-048 - Apache Struts 2 Wiki - Apache Software Foundation

http://struts.apache.org/docs/s2-048.html

Patch Availability(1)

Vendor / EcosystemFix (by version range) / PatchReleasedSource
mavenorg.apache.struts:struts2-struts1-plugin—ghsa

Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.

Affected Packages

(1 across 1 ecosystem)
Maven(1)
PackageVulnerable rangeFix by version rangeDependents
org.apache.struts:struts2-struts1-plugin2.0.11 ... 2.3.8 (55 versions)
  • every version through 2.3.37: no fix on record
—

Weakness Classification(1)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Data Freshness Timeline

(refreshed 48× in last 7d / 210× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

Showing the most recent 100 of 951 total refreshes for this CVE.

  1. 2026-10-10 23:49 UTCGHSA enrichment
  2. 2026-10-10 20:02 UTCEG score recompute
  3. 2026-10-10 20:02 UTCGHSA enrichment
  4. 2026-10-10 19:55 UTCEPSS rescore
  5. 2026-10-10 16:15 UTCGHSA enrichment
  6. 2026-10-10 12:29 UTCGHSA enrichment
  7. 2026-10-10 08:41 UTCGHSA enrichment
  8. 2026-10-10 04:54 UTCGHSA enrichment
  9. 2026-10-10 01:08 UTCGHSA enrichment
  10. 2026-10-09 21:21 UTCEG score recompute
  11. 2026-10-09 21:21 UTCGHSA enrichment
  12. 2026-10-09 20:02 UTCEPSS rescore
  13. 2026-10-09 17:34 UTCGHSA enrichment
  14. 2026-10-09 13:46 UTCGHSA enrichment
  15. 2026-10-09 09:59 UTCGHSA enrichment
  16. 2026-10-09 06:10 UTCGHSA enrichment
  17. 2026-10-09 02:24 UTCGHSA enrichment
  18. 2026-10-08 22:37 UTCGHSA enrichment
  19. 2026-10-08 18:50 UTCGHSA enrichment
  20. 2026-10-08 15:03 UTCGHSA enrichment
  21. 2026-10-08 11:16 UTCGHSA enrichment
  22. 2026-10-08 07:28 UTCGHSA enrichment
  23. 2026-10-08 03:42 UTCGHSA enrichment
  24. 2026-10-07 23:55 UTCGHSA enrichment
  25. 2026-10-07 20:07 UTCGHSA enrichment
Show 75 more
  1. 2026-10-07 16:19 UTCGHSA enrichment
  2. 2026-10-07 12:28 UTCGHSA enrichment
  3. 2026-10-07 08:42 UTCGHSA enrichment
  4. 2026-10-07 04:55 UTCGHSA enrichment
  5. 2026-10-07 01:08 UTCGHSA enrichment
  6. 2026-10-06 21:21 UTCGHSA enrichment
  7. 2026-10-06 17:34 UTCGHSA enrichment
  8. 2026-10-06 13:47 UTCGHSA enrichment
  9. 2026-10-06 10:00 UTCGHSA enrichment
  10. 2026-10-06 06:13 UTCGHSA enrichment
  11. 2026-10-06 02:26 UTCGHSA enrichment
  12. 2026-10-05 22:39 UTCGHSA enrichment
  13. 2026-10-05 18:51 UTCGHSA enrichment
  14. 2026-10-05 15:03 UTCGHSA enrichment
  15. 2026-10-05 11:13 UTCGHSA enrichment
  16. 2026-10-05 07:27 UTCGHSA enrichment
  17. 2026-10-05 03:40 UTCGHSA enrichment
  18. 2026-10-04 23:52 UTCGHSA enrichment
  19. 2026-10-04 20:05 UTCGHSA enrichment
  20. 2026-10-04 16:18 UTCGHSA enrichment
  21. 2026-10-04 12:31 UTCGHSA enrichment
  22. 2026-10-04 08:44 UTCGHSA enrichment
  23. 2026-10-04 04:57 UTCGHSA enrichment
  24. 2026-10-04 01:10 UTCGHSA enrichment
  25. 2026-10-03 21:24 UTCGHSA enrichment
  26. 2026-10-03 17:37 UTCGHSA enrichment
  27. 2026-10-03 13:50 UTCGHSA enrichment
  28. 2026-10-03 10:03 UTCGHSA enrichment
  29. 2026-10-03 06:16 UTCGHSA enrichment
  30. 2026-10-03 02:29 UTCGHSA enrichment
  31. 2026-10-02 22:41 UTCGHSA enrichment
  32. 2026-10-02 18:54 UTCGHSA enrichment
  33. 2026-10-02 15:07 UTCGHSA enrichment
  34. 2026-10-02 11:20 UTCGHSA enrichment
  35. 2026-10-02 07:30 UTCGHSA enrichment
  36. 2026-10-02 03:44 UTCGHSA enrichment
  37. 2026-10-01 23:57 UTCGHSA enrichment
  38. 2026-10-01 20:09 UTCGHSA enrichment
  39. 2026-10-01 16:22 UTCGHSA enrichment
  40. 2026-10-01 12:35 UTCGHSA enrichment
  41. 2026-10-01 08:48 UTCGHSA enrichment
  42. 2026-10-01 05:02 UTCGHSA enrichment
  43. 2026-10-01 01:15 UTCGHSA enrichment
  44. 2026-09-30 21:29 UTCGHSA enrichment
  45. 2026-09-30 17:42 UTCGHSA enrichment
  46. 2026-09-30 13:55 UTCGHSA enrichment
  47. 2026-09-30 10:08 UTCGHSA enrichment
  48. 2026-09-30 06:20 UTCGHSA enrichment
  49. 2026-09-30 02:33 UTCGHSA enrichment
  50. 2026-09-29 22:46 UTCGHSA enrichment
  51. 2026-09-29 18:58 UTCGHSA enrichment
  52. 2026-09-29 15:09 UTCGHSA enrichment
  53. 2026-09-29 11:23 UTCGHSA enrichment
  54. 2026-09-29 07:36 UTCGHSA enrichment
  55. 2026-09-29 03:50 UTCGHSA enrichment
  56. 2026-09-29 00:03 UTCEG score recompute
  57. 2026-09-29 00:03 UTCGHSA enrichment
  58. 2026-09-28 20:17 UTCGHSA enrichment
  59. 2026-09-28 16:30 UTCGHSA enrichment
  60. 2026-09-28 12:43 UTCGHSA enrichment
  61. 2026-09-28 08:56 UTCGHSA enrichment
  62. 2026-09-28 05:09 UTCGHSA enrichment
  63. 2026-09-28 01:23 UTCGHSA enrichment
  64. 2026-09-27 21:51 UTCCISA KEV update
  65. 2026-09-27 21:36 UTCGHSA enrichment
  66. 2026-09-27 17:49 UTCGHSA enrichment
  67. 2026-09-27 14:03 UTCGHSA enrichment
  68. 2026-09-27 10:15 UTCGHSA enrichment
  69. 2026-09-27 06:28 UTCGHSA enrichment
  70. 2026-09-27 02:39 UTCGHSA enrichment
  71. 2026-09-26 22:51 UTCGHSA enrichment
  72. 2026-09-26 19:05 UTCGHSA enrichment
  73. 2026-09-26 15:17 UTCGHSA enrichment
  74. 2026-09-26 11:30 UTCGHSA enrichment
  75. 2026-09-26 07:41 UTCGHSA enrichment

Publicly available exploits

(6 references)

Public exploit code is referenced for this CVE (1 Metasploit module, 2 Exploit-DB entries, 2 GitHub PoCs), as is 1 Nuclei detection template. A detection template checks whether a system is affected; it is not necessarily exploit code. Defenders should treat patch urgency accordingly.

  • Exploit-DBEDB-44643✓ verified
    Published May 17, 2018

    Apache Struts 2 - Struts 1 Plugin Showcase OGNL Code Execution (Metasploit)

    Open source ↗
  • Metasploitexploit/multi/http/struts2_code_exec_showcase✓ verified
    Published May 16, 2018

    Apache Struts 2 Struts 1 Plugin Showcase OGNL Code Execution

    Open source ↗
  • Exploit-DBEDB-42324✓ verified
    Published Jul 7, 2017

    Apache Struts 2.3.x Showcase - Remote Code Execution

    Open source ↗
  • Nucleihttp/cves/2017/CVE-2017-9791.yaml
    Published Mar 5, 2021

    Apache Struts2 S2-053 - Remote Code Execution

    Open source ↗
  • GitHub PoCdragoneeg/Struts2-048
    Published Jul 7, 2017

    CVE-2017-9791

    Open source ↗
  • GitHub PoCIanSmith123/s2-048
    Published Jul 7, 2017

    Apache struts struts 2 048, CVE-2017-9791.

    Open source ↗

Frequently asked(6)

What is CVE-2017-9791?
CVE-2017-9791 is a critical vulnerability published on July 10, 2017. 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.
When was CVE-2017-9791 disclosed?
CVE-2017-9791 was first published on July 10, 2017, with the most recent update on June 17, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2017-9791 actively exploited?
Yes. CISA added CVE-2017-9791 to the Known Exploited Vulnerabilities catalog on February 10, 2022, affecting Apache Struts 1. KEV listing indicates confirmed exploitation in the wild; this CVE warrants immediate attention. A fixed version is listed under Patch Availability. Apply it.
What is the CVSS score of CVE-2017-9791?
CVE-2017-9791 has a CVSS v3 base score of 9.8 (NVD).
Which products are affected by CVE-2017-9791?
CVE-2017-9791 affects Apache Struts 1. The affected packages EchelonGraph has on record, with version ranges, are listed in the Affected Packages section of this page.
How do I remediate CVE-2017-9791?
A fixed version for CVE-2017-9791 is listed under Patch Availability on this page: update to the version listed for your package.

Dependency Blast Radius

See which npm, PyPI, Go, and Maven packages are affected by CVE-2017-9791

Explore →

Is Your Infrastructure Affected by CVE-2017-9791?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.