{"id":"CVE-2013-2251","aliases":["EUVD-2022-2328","GHSA-47qp-8v9g-39hp"],"status":"published","title":"Code injection in Apache Struts","description":"Apache Struts 2.0.0 through 2.3.15 allows remote attackers to execute arbitrary OGNL expressions via a parameter with a crafted (1) action:, (2) redirect:, or (3) redirectAction: prefix.","severity":{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.99998,"percentile":0.9999,"model":"v2026.06.15"},"facts":{"in_kev":true,"known_exploited":true,"public_exploit":true,"fix_available":true},"cwes":["CWE-20","CWE-74"],"published":"2013-07-18T01:00:00Z","modified":"2026-06-16T23:53:01Z","kev":{"date_added":"2022-03-25","due_date":"2022-04-15","required_action":"Apply updates per vendor instructions.","known_ransomware_use":"Unknown"},"exploitation":[{"source":"euvd","since":"2022-03-25"},{"source":"kev","since":"2022-03-25"}],"exploits":[{"source":"metasploit","id":"exploit/multi/http/struts_default_action_mapper","title":"Apache Struts 2 DefaultActionMapper Prefixes OGNL Code Execution","type":"exploit","platform":"Linux,Windows","date":"2013-07-02","verified":true,"url":"https://www.rapid7.com/db/modules/exploit/multi/http/struts_default_action_mapper"},{"source":"exploitdb","id":"EDB-27135","title":"Apache Struts 2 - DefaultActionMapper Prefixes OGNL Code Execution (Metasploit)","type":"remote","platform":"multiple","date":"2013-07-27","verified":true,"url":"https://www.exploit-db.com/exploits/27135"},{"source":"exploitdb","id":"EDB-44583","title":"Apache Struts2 2.0.0 \u003c 2.3.15 - Prefixed Parameters OGNL Injection","type":"webapps","platform":"multiple","date":"2014-01-14","verified":true,"url":"https://www.exploit-db.com/exploits/44583"},{"source":"pocgithub","id":"nth347/struts2-CVE-2013-2251","title":"nth347/struts2-CVE-2013-2251","date":"2023-08-04","url":"https://github.com/nth347/struts2-CVE-2013-2251"},{"source":"nuclei","id":"CVE-2013-2251","title":"Apache Struts 2 - DefaultActionMapper Prefixes OGNL Code Execution","type":"detection template","url":"https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2013/CVE-2013-2251.yaml"}],"fixes":[{"ecosystem":"Maven","package":"org.apache.struts:struts2-core","fixed_in":["2.3.15.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Maven","package":"org.apache.struts:struts2-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.15.1"}]}]},{"source":"osv","ecosystem":"Maven","package":"org.apache.struts:struts2-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.15.1"}]}],"versions":["2.0.11","2.0.11.1","2.0.11.2","2.0.12","2.0.14","2.0.5","2.0.6","2.0.8","2.0.9","2.1.2","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.12","2.3.14","2.3.14.1","2.3.14.2","2.3.14.3","2.3.15","2.3.3","2.3.4","2.3.4.1","2.3.7","2.3.8"]}],"products":[{"vendor":"apache","product":"archiva"},{"vendor":"apache","product":"struts"},{"vendor":"fujitsu","product":"interstage_business_process_manager_analytics"},{"vendor":"oracle","product":"siebel_apps_-_e-billing"}],"references":[{"url":"http://www.fujitsu.com/global/support/software/security/products-f/interstage-bpm-analytics-201301e.html","tags":["x_refsource_CONFIRM","x_transferred","Broken Link","Third Party Advisory","web"]},{"url":"http://www.oracle.com/technetwork/topics/security/cpujul2015-2367936.html","tags":["x_refsource_CONFIRM","x_transferred","Patch","Third Party Advisory","web"]},{"url":"https://exchange.xforce.ibmcloud.com/vulnerabilities/90392","tags":["vdb-entry","x_refsource_XF","x_transferred","Third Party Advisory","VDB Entry","web"]},{"url":"http://seclists.org/fulldisclosure/2013/Oct/96","tags":["mailing-list","x_refsource_FULLDISC","x_transferred","Exploit","Mailing List","Third Party Advisory","web"]},{"url":"http://cxsecurity.com/issue/WLB-2014010087","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","web"]},{"url":"http://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20131023-struts2","tags":["vendor-advisory","x_refsource_CISCO","x_transferred","Third Party Advisory","web"]},{"url":"http://struts.apache.org/release/2.3.x/docs/s2-016.html","tags":["x_refsource_CONFIRM","x_transferred","Patch","web"]},{"url":"http://archiva.apache.org/security.html","tags":["x_refsource_CONFIRM","x_transferred","Product","web"]},{"url":"http://osvdb.org/98445","tags":["vdb-entry","x_refsource_OSVDB","x_transferred","Broken Link"]},{"url":"http://www.securitytracker.com/id/1032916","tags":["vdb-entry","x_refsource_SECTRACK","x_transferred","Broken Link","Third Party Advisory","VDB Entry"]},{"url":"http://www.securityfocus.com/bid/61189","tags":["vdb-entry","x_refsource_BID","x_transferred","Broken Link","Third Party Advisory","VDB Entry"]},{"url":"http://www.securitytracker.com/id/1029184","tags":["vdb-entry","x_refsource_SECTRACK","x_transferred","Broken Link","Third Party Advisory","VDB Entry"]},{"url":"http://www.securityfocus.com/bid/64758","tags":["vdb-entry","x_refsource_BID","x_transferred","Broken Link","Third Party Advisory","VDB Entry"]},{"url":"http://www.oracle.com/technetwork/topics/security/cpujan2014-1972949.html","tags":["x_refsource_CONFIRM","x_transferred","Patch","Third Party Advisory","web"]},{"url":"http://seclists.org/oss-sec/2014/q1/89","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Third Party Advisory","web"]},{"url":"http://packetstormsecurity.com/files/159629/Apache-Struts-2-Remote-Code-Execution.html","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","VDB Entry","web"]},{"url":"https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2013-2251","tags":["government-resource","US Government Resource","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2013-2251","tags":["advisory"]},{"url":"https://github.com/apache/struts/commit/3cfe34fefedcf0fdcfcb061c0aea34a715b7de6","tags":["web"]},{"url":"https://github.com/apache/struts/commit/630e1ba065a8215c4e9ac03bfb09be9d655c2b6e","tags":["web"]},{"url":"https://issues.apache.org/jira/browse/WW-4140","tags":["web"]},{"url":"https://github.com/advisories/GHSA-47qp-8v9g-39hp"},{"url":"https://github.com/apache/struts","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2013-2251","description":"Apache Struts 2.0.0 through 2.3.15 allows remote attackers to execute arbitrary OGNL expressions via a parameter with a crafted (1) action:, (2) redirect:, or (3) redirectAction: prefix.","status":"published","published":"2013-07-18T01:00:00Z","modified":"2025-10-22T00:05:41.25Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"adp"}],"cwes":["CWE-74"],"updated_at":"2026-11-02T14:34:56.19172Z"}],"euvd":[{"id":"EUVD-2022-2328","description":"Apache Struts 2.0.0 through 2.3.15 allows remote attackers to execute arbitrary OGNL expressions via a parameter with a crafted (1) action:, (2) redirect:, or (3) redirectAction: prefix.","status":"published","published":"2013-07-18T01:00:00Z","modified":"2025-10-22T00:05:41Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"exploited_since":"2022-03-25","updated_at":"2026-11-02T19:49:39.244432Z"}],"ghsa":[{"id":"GHSA-47qp-8v9g-39hp","title":"Code injection in Apache Struts","description":"The Struts 2 DefaultActionMapper supports a method for short-circuit navigation state changes by prefixing parameters with \"action:\" or \"redirect:\", followed by a desired navigational target expression. This mechanism was intended to help with attaching navigational information to buttons within forms.\n\nIn Struts 2 before 2.3.15.1 the information following \"action:\", \"redirect:\" or \"redirectAction:\" is not properly sanitized. Since said information will be evaluated as OGNL expression against the value stack, this introduces the possibility to inject server side code.","status":"published","published":"2022-05-13T01:14:26Z","modified":"2025-10-22T19:33:22Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:H","level":"critical"}],"cwes":["CWE-20","CWE-74"],"updated_at":"2026-11-02T14:39:03.380616Z"}],"kev":[{"id":"CVE-2013-2251","title":"Apache Struts Improper Input Validation Vulnerability","description":"Apache Struts allows remote attackers to execute arbitrary Object-Graph Navigation Language (OGNL) expressions.","cwes":["CWE-20"],"kev":{"date_added":"2022-03-25","due_date":"2022-04-15","required_action":"Apply updates per vendor instructions.","known_ransomware_use":"Unknown"},"updated_at":"2026-11-02T17:00:16.541131Z"}],"nvd":[{"id":"CVE-2013-2251","description":"Apache Struts 2.0.0 through 2.3.15 allows remote attackers to execute arbitrary OGNL expressions via a parameter with a crafted (1) action:, (2) redirect:, or (3) redirectAction: prefix.","status":"published","published":"2013-07-20T03:37:30.737Z","modified":"2026-06-16T23:53:01.53Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary"},{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"secondary"},{"version":"2.0","score":9.3,"vector":"AV:N/AC:M/Au:N/C:C/I:C/A:C","level":"high","assessor":"primary"}],"cwes":["CWE-74"],"updated_at":"2026-11-02T14:02:31.592595Z"}],"osv":[{"id":"GHSA-47qp-8v9g-39hp","title":"Code injection in Apache Struts","description":"The Struts 2 DefaultActionMapper supports a method for short-circuit navigation state changes by prefixing parameters with \"action:\" or \"redirect:\", followed by a desired navigational target expression. This mechanism was intended to help with attaching navigational information to buttons within forms.\n\nIn Struts 2 before 2.3.15.1 the information following \"action:\", \"redirect:\" or \"redirectAction:\" is not properly sanitized. Since said information will be evaluated as OGNL expression against the value stack, this introduces the possibility to inject server side code.","status":"published","published":"2022-05-13T01:14:26Z","modified":"2025-10-22T19:41:41.548096Z","cvss":[{"version":"3.1","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:H","level":"critical"}],"cwes":["CWE-20","CWE-74"],"updated_at":"2026-11-02T15:46:36.782754Z"}]}}
