{"basis":"claimed","id":"CVE-2017-5638","name":"Apache Struts Remote Code Execution Vulnerability","vendorProject":"Apache","product":"Struts","publishedAt":"2017-03-11","cvss":{"score":9.8,"severity":"CRITICAL","version":"3.1"},"exploited":{"kevAdded":"2021-11-03","dueDate":"2022-05-03","ransomware":true},"epss":{"score":0.99999,"percentile":0.99994,"date":"2026-11-02"},"coverage":{"cloudflare":{"status":"no_history","firstOn":null,"daysToRule":null},"aws":{"status":"no_history","firstOn":null,"daysToRule":null},"azure":{"status":"rule","firstOn":null,"daysToRule":null},"google":{"status":"no_history","firstOn":null,"daysToRule":null},"fastly":{"status":"no_history","firstOn":null,"daysToRule":null},"f5":{"status":"no_history","firstOn":null,"daysToRule":null},"akamai":{"status":"no_source","firstOn":null,"daysToRule":null},"crs":{"status":"no_history","firstOn":null,"daysToRule":null}},"title":null,"description":"The Jakarta Multipart parser in Apache Struts 2 2.3.x before 2.3.32 and 2.5.x before 2.5.10.1 has incorrect exception handling and error-message generation during file-upload attempts, which allows remote attackers to execute arbitrary commands via a crafted Content-Type, Content-Disposition, or Content-Length HTTP header, as exploited in the wild in March 2017 with a Content-Type header containing a #cmd= string.","cwes":["CWE-20"],"vendors":[{"vendor":"cloudflare","status":"no_history","basis":"claimed","firstOn":null,"firstIsNew":false,"daysToRule":null,"daysAtMost":null,"freePlan":false,"claims":[]},{"vendor":"aws","status":"no_history","basis":"claimed","firstOn":null,"firstIsNew":false,"daysToRule":null,"daysAtMost":null,"freePlan":false,"claims":[]},{"vendor":"azure","status":"rule","basis":"claimed","firstOn":null,"firstIsNew":false,"daysToRule":null,"daysAtMost":null,"freePlan":false,"claims":[{"id":"041936224ef68cd8db973c2ff5fd976b165a106a38b9c01baeef356dd30f101d","cve_id":"CVE-2017-5638","vendor":"azure","product":"Front Door WAF (DRS)","rule_id":"99001009","rule_name":"Attempted Apache struts ognl injection CVE-2017-5638","change":"listed","default_action":null,"published_on":null,"source_url":"https://learn.microsoft.com/en-us/azure/web-application-firewall/afds/waf-front-door-drs","source_title":"Front Door WAF (DRS) rule groups and rules","excerpt":"Rule 99001009: Critical - 5 · 2 · Attempted Apache struts ognl injection CVE-2017-5638","first_seen_at":"2026-11-02T21:00:19.031Z"},{"id":"4f904457d003ef34ca6cb8a0bcaa3b6297cc1419d18f535b96df25340caf30bd","cve_id":"CVE-2017-5638","vendor":"azure","product":"Application Gateway WAF (DRS/CRS)","rule_id":"99001009","rule_name":"Attempted Apache struts ognl injection CVE-2017-5638","change":"listed","default_action":null,"published_on":null,"source_url":"https://learn.microsoft.com/en-us/azure/web-application-firewall/ag/application-gateway-crs-rulegroups-rules","source_title":"Application Gateway WAF (DRS/CRS) rule groups and rules","excerpt":"Rule 99001009: Critical - 5 · 2 · Attempted Apache struts ognl injection CVE-2017-5638","first_seen_at":"2026-11-02T21:00:19.183Z"}]},{"vendor":"google","status":"no_history","basis":"claimed","firstOn":null,"firstIsNew":false,"daysToRule":null,"daysAtMost":null,"freePlan":false,"claims":[]},{"vendor":"fastly","status":"no_history","basis":"claimed","firstOn":null,"firstIsNew":false,"daysToRule":null,"daysAtMost":null,"freePlan":false,"claims":[]},{"vendor":"f5","status":"no_history","basis":"claimed","firstOn":null,"firstIsNew":false,"daysToRule":null,"daysAtMost":null,"freePlan":false,"claims":[]},{"vendor":"akamai","status":"no_source","basis":"claimed","firstOn":null,"firstIsNew":false,"daysToRule":null,"daysAtMost":null,"freePlan":false,"claims":[]},{"vendor":"crs","status":"no_history","basis":"claimed","firstOn":null,"firstIsNew":false,"daysToRule":null,"daysAtMost":null,"freePlan":false,"claims":[]}],"updatedAt":"2026-11-03T01:17:42.287Z","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","ssvc":{"exploitation":"active","automatable":"yes","technicalImpact":"total"},"measured":[{"engineId":"owasp-crs","engineName":"OWASP Core Rule Set","engineVersion":"4.25.0","runtime":"Coraza v3.8.1","config":"paranoia level 1, anomaly threshold 5, default CRS settings","ranAt":"2026-11-02T13:02:57.000Z","verdict":"blocked","templateId":"CVE-2017-5638","templatePath":"http/cves/2017/CVE-2017-5638.yaml","requests":1,"blockedRequests":1,"rules":["920420","920470","944100","944110","944130"],"note":"","requestDetail":[{"method":"GET","path":"/","status":403,"blocked":true,"rules":["920420","920470","944100","944110","944130"]}]},{"engineId":"owasp-crs","engineName":"OWASP Core Rule Set","engineVersion":"4.25.0","runtime":"Coraza v3.8.1","config":"paranoia level 2, anomaly threshold 5, default CRS settings","ranAt":"2026-11-02T13:03:28.000Z","verdict":"blocked","templateId":"CVE-2017-5638","templatePath":"http/cves/2017/CVE-2017-5638.yaml","requests":1,"blockedRequests":1,"rules":["920420","920470","921422","944100","944110","944130","944250"],"note":"","requestDetail":[{"method":"GET","path":"/","status":403,"blocked":true,"rules":["920420","920470","921422","944100","944110","944130"]}]}],"social":{"total":0,"first_seen":null,"daily":[{"day":"2026-10-21","posts":0},{"day":"2026-10-22","posts":0},{"day":"2026-10-23","posts":0},{"day":"2026-10-24","posts":0},{"day":"2026-10-25","posts":0},{"day":"2026-10-26","posts":0},{"day":"2026-10-27","posts":0},{"day":"2026-10-28","posts":0},{"day":"2026-10-29","posts":0},{"day":"2026-10-30","posts":0},{"day":"2026-10-31","posts":0},{"day":"2026-11-01","posts":0},{"day":"2026-11-02","posts":0},{"day":"2026-11-03","posts":0}],"top_posts":[],"exploit_repositories":[]}}