Patchfirst
CVE-2017-9791 KEVPublic exploit Critical · 9.8 EPSS 98.9%

Apache Struts 1 Improper Input Validation Vulnerability

Apache · Struts 1

Summary

The Struts 1 plugin in Apache Struts 2.1.x and 2.3.x, part of the Apache Struts 1 product line, contains an improper input validation flaw. An attacker with remote network access, requiring no authentication or user interaction, can supply a malicious field value in a raw message passed to ActionMessage, potentially achieving remote code execution.

Official description · NVD

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.

Breakdown
69.8 / 100
Exploited
Yes, in CISA KEV
Reports
0
Tactics
2/15

How an attack unfolds

Based on mappings. Select a step to see the evidence.
  1. How attackers get in

  2. What they do

First seen exploited 3 years after disclosure. Public exploit code (Exploit-DB) was available 3 days before disclosure.

  1. Public exploit codeExploit-DB3 days before
  2. Disclosedday 0
  3. First seen exploitedVulnCheck KEV evidence+3 yrs
  4. Added to CISA KEVEU database agrees+5 yrs

CISA KEV listing is when exploitation was confirmed, not necessarily the first attack.

techniques

2 , grouped by in kill-chain order, 2 cited passages 2

Initial AccessTA0001

Exploit Public-Facing Application T1190 Medium
AI mapping from the description · how it is exploited

remote exploit of public-facing Struts app

might allow remote code execution via a malicious field value passed in a raw message
From the official description (NVD) Original (opens in a new tab) ↗

ExecutionTA0002

Command and Scripting Interpreter T1059 Medium
AI mapping from the description · primary impact

RCE grants command execution on server

might allow remote code execution via a malicious field value
From the official description (NVD) Original (opens in a new tab) ↗

Detection

0 rules for this CVE · 244 general rules for its techniques

Rules for this CVE

0 that reference CVE-2017-9791 directly.

CVE-specific rules are not available in this build. Search SigmaHQ ↗

Sigma rules © SigmaHQ, Detection Rule License 1.1; linked, not reproduced.

Am I affected? What do I upgrade to?

From GitHub Security Advisories and OSV

1 package in 1 ecosystem. Main package: org.apache.struts:struts2-struts1-plugin.

Mavenorg.apache.struts:struts2-struts1-pluginGHSA-29rm-6752-gvwv

No fixed version published. Check the advisory or remove the package.

Affected versions

If you runUpgrade to
2.3.37 and earlierNo fix published

Check your lockfile against all CVEs

What security researchers reported

Not named in any threat report yet

Also mentioned in 50 community threat pulses (AlienVault OTX)

Weaker evidence

Pulses are indicator collections that anyone can publish. A mention is not confirmation of exploitation.

References

8 links, grouped by NVD tag (7 duplicates merged)
↑ ↓ chooseEnter openEsc close