cbcvebase.
CVE-2017-9791
published 2017-07-10

CVE-2017-9791: 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.

PriorityP193critical9.8CVSS 3.1
AVNACLPRNUINSUCHIHAH
KEVITWEXPLOITInitial access
CISA Known Exploited Vulnerabilitydue 2022-08-10
Exploited in the wild
EPSS
98.93%
99.9th percentile
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.

Affected

35 ranges· showing 25
VendorProductVersion rangeFixed in
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts
apachestruts

Detection & IOCsextracted from sources · hover to see the quote

urlhttp://127.0.0.1:8080/2.3.15.1-showcase/integration/saveGangster.action
urlhttp://127.0.0.1:8080/2.3.15.1-showcase/integration/editGangster
path/integration/saveGangster.action
command%{(#[email protected]@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(@java.lang.Runtime@getRuntime().exec('<cmd>'))}
  • Detect OGNL expression injection in the 'name' POST parameter targeting the saveGangster.action endpoint; payload begins with '%{' and contains 'OgnlContext@DEFAULT_MEMBER_ACCESS' and 'getRuntime().exec'
  • Monitor HTTP POST requests to paths matching /integration/saveGangster.action with a 'name' parameter containing OGNL expression syntax ('%{' ... '}')
  • Apply Deep Security DPI rule 1008490 to detect exploitation attempts against this vulnerability
  • TippingPoint rule C000002 detects access to the SaveGangster.action showcase site path specifically
  • TippingPoint rule C000003 detects suspicious opensymphony action requests characteristic of Struts 2 OGNL exploitation
  • TippingPoint rule C000004 detects echo command usage in Struts 2 exploit payloads
  • The vulnerable code path is in SaveGangsterAction.java; monitor for unsanitized user input from gform.getName() flowing into ActionMessage constructor as a raw string rather than a resource key
  • ·Only Apache Struts 2.3.x with the Struts 1 plugin enabled is vulnerable; Struts 2.5.x is NOT affected

CVSS provenance

nvdv3.19.8CRITICALCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
nvdv2.07.5HIGHAV:N/AC:L/Au:N/C:P/I:P/A:P
vulncheck9.8CRITICAL
cisa9.8CRITICAL
vendor_redhat9.8CRITICAL
CVEs like this are exactly what “Exploited This Week” covers.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.