# CVE-2017-12611: Apache Software Foundation Apache Struts - Exploited (CISA KEV): no - Published: 2017-09-20 - CVSS: not scored - EPSS: 87.1% (100th percentile) 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. ## Edge WAF coverage (claimed by vendors, not measured) | Vendor | Status | First rule | Days after publication | |---|---|---|---| | Cloudflare | Before feed history | — | — | | AWS | Before feed history | — | — | | Microsoft Azure | Rule published | — | — | | Google Cloud | Before feed history | — | — | | Fastly | Before feed history | — | — | | F5 | Before feed history | — | — | | Akamai | No public source | — | — | | OWASP CRS | Before feed history | — | — | ### Microsoft Azure - undated · listed · rule 99001010 > Rule 99001010: Critical - 5 · 2 · Attempted Apache struts ognl injection CVE-2017-12611 Source: https://learn.microsoft.com/en-us/azure/web-application-firewall/afds/waf-front-door-drs - undated · listed · rule 99001010 > Rule 99001010: Critical - 5 · 2 · Attempted Apache struts ognl injection CVE-2017-12611 Source: https://learn.microsoft.com/en-us/azure/web-application-firewall/ag/application-gateway-crs-rulegroups-rules ## Our test (measured) - OWASP Core Rule Set 4.25.0, paranoia level 1, anomaly threshold 5, default CRS settings: blocked (1 of 1 requests blocked), template CVE-2017-12611, 2026-11-02 - OWASP Core Rule Set 4.25.0, paranoia level 2, anomaly threshold 5, default CRS settings: blocked (1 of 1 requests blocked), template CVE-2017-12611, 2026-11-02 "No public claim" means no vendor statement names this CVE; "Before feed history" means the CVE is older than the vendor feed. In both cases generic rules may still block it. HTML: https://cve.vigilbase.com/cve/CVE-2017-12611 · JSON: https://cve.vigilbase.com/api/v1/cves/CVE-2017-12611