WaratekVRT Sign in

CVE-2017-12611 Apache Struts

Affected softwareApache Struts
Severity9.8 Critical CVSS 3.0 2 scores
Fixed in2.3.34, 2.5.11
WeaknessImproper input validation (CWE-20)
Published20 Sep 2017
Updated13 Nov 2026

Description

In Apache Struts 2.0.0 through 2.3.33 and 2.5 through 2.5.10.1, using an unintentional expression in a Freemarker tag instead of string literals can lead to a RCE attack.

Exploitation status

Exploited

Real-world exploitation reported by VulnCheck KEV. CISA has not confirmed it.

  • CISA KEV not listed
  • VulnCheck KEV listed Exploitation reported in the wild. 2 citations · 3 exploits · earliest 2024-04-15.
  • CISA Vulnrichment no assessment published
  • Indexed PoC 4 indexed Published artifacts you can open, in Exploit-DB, GitHub PoC, Nuclei; first seen 2017-09-08.
  • EPSS 87% chance in 30 days A model's forecast, not a report of exploitation. Higher than 99.8% of all scored CVEs.

VulnCheck KEV

Exploitation evidence from VulnCheck Known Exploited Vulnerabilities (VulnCheck KEV), used under VulnCheck's community terms. View CVE-2017-12611 in VulnCheck (free account).

EvidenceSourceDetailDate
Reported exploitation veriti.ai /blog/vulnerable-villain-when-hackers-get-hacked 2024-04-15
Reported exploitation ti.qianxin.com /blog/articles/operation-run-the-cyber-carnival-of-offshore-patriots-en 2025-05-19
Exploit reference VulnCheck XDB c0c7a67b1662 Exploit type: initial-access 2017-09-08
Exploit reference VulnCheck XDB 8fda6a527fab Exploit type: initial-access 2025-09-15
Exploit reference VulnCheck XDB 102671f49f40 Exploit type: initial-access 2025-09-24

1 of these are GitHub repositories with fewer than 5 stars. They are listed for reference and don't count toward the exploitation status above.

IndexArtifactStarsFirst seen
GitHub PoC A simple script for exploit RCE for Struts 2 S2-053(CVE-2017-12611) 37 2017-09-08
GitHub PoC RCE project 2025-09-24
Exploit-DB Apache Struts 2.0.1 < 2.3.33 / 2.5 < 2.5.10 - Arbitrary Code Execution 2017-09-08
Nuclei Apache Struts2 S2-053 - Remote Code Execution

Waratek protection

Protected by Waratek

Waratek has a rule that blocks attacks on this vulnerability.

Decided by A researcher's recorded decision for this specific CVE
Finding A researcher found this CVE protected by the ARMR Process rule.

Waratek research note

written 2026-11-13

Written by a Waratek engineer who reviewed this CVE. Their decision sets the status above, ahead of every automated rule except a withdrawal.

Comments

Rule Name: ARMR Process rule

Exploitation forks a process. Blocked by the Process rule in PROTECT mode.

Only stops attacks that start a program; an expression that reads files or data directly in Java is not stopped.

The payload invokes an absolute interpreter path, so the rule has to cover it; a scope limited to upload and temp directories will not match.

How to mitigate CVE-2017-12611

Upgrade Apache Struts to a release that fixes it: 2.3.34 or 2.5.11. Until you can, Waratek RASP blocks exploitation with its process rule. It runs inside the Java application, with no code changes.

Waratek RASP Runtime protection for Java applications

CVSS

9.8 CRITICAL v3.0 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H 2 metrics

We show the highest score from the newest CVSS version. Scores from different versions can't be compared, and the first score listed is sometimes a 0.0 placeholder.

VersionScoreBandVectorAssignerType
CVSS 3.0 9.8 CRITICAL CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H NVD Primary published
CVSS 2.0 7.5 none AV:N/AC:L/Au:N/C:P/I:P/A:P NVD Primary

Affected software and releases

Maven packages

Affected and fixed versions, from OSV.dev
PackageIntroducedFixedLast affected
org.apache.struts:struts2-core 2.0.1 2.3.34 unbounded
org.apache.struts:struts2-core 2.5.0 2.5.11 unbounded

Products and versions

2 products, 92 version entries
SourceVendorProductSchemeAffected versions
nvd apache struts generic 2.0.1 · 2.0.2 · 2.0.3 · 2.0.4 · 2.0.5 · 2.0.6 · 2.0.7 · 2.0.8 · 2.0.9 · 2.0.10 · 2.0.11 · 2.0.11.1 · 2.0.11.2 · 2.0.12 · 2.0.13 · 2.0.14 · 2.1.0 · 2.1.1 · 2.1.2 · 2.1.3 · 2.1.4 · 2.1.5 · 2.1.6 · 2.1.8 · 2.1.8.1 · 2.2.1 · 2.2.1.1 · 2.2.3 · 2.2.3.1 · 2.3.1 · 2.3.1.1 · 2.3.1.2 · 2.3.3 · 2.3.4 · 2.3.4.1 · 2.3.5 · 2.3.6 · 2.3.7 · 2.3.8 · 2.3.9 · 2.3.10 · 2.3.11 · 2.3.12 · 2.3.13 · 2.3.14 · 2.3.14.1 · 2.3.14.2 · 2.3.14.3 · 2.3.15 · 2.3.15.1 · 2.3.15.2 · 2.3.15.3 · 2.3.16 · 2.3.16.1 · 2.3.16.2 · 2.3.16.3 · 2.3.17 · 2.3.19 · 2.3.20 · 2.3.20.1 · 2.3.20.2 · 2.3.21 · 2.3.22 · 2.3.23 · 2.3.24.2 · 2.3.24.3 · 2.3.25 · 2.3.26 · 2.3.27 · 2.3.28 · 2.3.28.1 · 2.3.29 · 2.3.30 · 2.3.31 · 2.3.32 · 2.3.33 · 2.5 · 2.5:beta1 · 2.5:beta2 · 2.5:beta3 · 2.5.1 · 2.5.2 · 2.5.3 · 2.5.4 · 2.5.5 · 2.5.6 · 2.5.7 · 2.5.8 · 2.5.9 · 2.5.10
osv org.apache.struts struts2-core generic ≥ 2.0.1 and < 2.3.34 · ≥ 2.5.0 and < 2.5.11

Earlier manual review

A reviewer classified this CVE in an older dataset. We kept the labels and products below, but not the reviewer's reasoning.

## Manual Classification Context **Products:** STRUTS, APACHE STRUTS 2

References

URLTags
https://github.com/apache/struts/commit/2306f5f7fad7f0157f216f34331238feb0539fa WEB
https://github.com/apache/struts/commit/637ad1c3707266c33daabb18d7754e795e6681f WEB
https://github.com/apache/struts PACKAGE
https://kb.netapp.com/support/s/article/ka51A000000CgttQAC/NTAP-20170911-0001 WEB
https://struts.apache.org/docs/s2-053.html WEB
https://web.archive.org/web/20170923161654/http://www.securityfocus.com/bid/100829 WEB
http://www.arubanetworks.com/assets/alert/ARUBA-PSA-2017-003.txt WEB
http://www.oracle.com/technetwork/security-advisory/alert-cve-2017-9805-3889403.html WEB
http://www.securityfocus.com/bid/100829 Third Party Advisory, VDB Entry

Timeline

Published2017-09-20By the CVE Program.
VulnCheck KEV: earliest evidence2024-04-15Date of the oldest evidence of exploitation in VulnCheck KEV's record. VulnCheck does not publish the date it listed the CVE.
VulnCheck KEV: latest evidence2025-09-24Date of the newest report, exploit reference or honeypot sighting in VulnCheck KEV's record.
NVD record modified2026-06-17NVD's own last-modified date for this record.
Classification created2026-11-13First commit adding this CVE's research note.
Last VRT activity2026-11-13Most recent commit touching this CVE's classification, patch or rule file.