{"id":"CVE-2012-0392","aliases":["EUVD-2022-2028","GHSA-2ppp-xj34-vvf7"],"status":"published","title":"Apache Struts's CookieInterceptor component does not use the parameter-name whitelist","description":"The CookieInterceptor component in Apache Struts before 2.3.1.1 does not use the parameter-name whitelist, which allows remote attackers to execute arbitrary commands via a crafted HTTP Cookie header that triggers Java code execution through a static method.","severity":{"version":"2.0","score":6.8,"vector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.97534,"percentile":0.99901,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":true,"fix_available":true},"published":"2012-01-08T15:00:00Z","modified":"2026-06-16T23:37:12Z","exploits":[{"source":"exploitdb","id":"EDB-18329","title":"Apache Struts 2 \u003c 2.3.1 - Multiple Vulnerabilities","type":"webapps","platform":"multiple","date":"2012-01-06","verified":true,"url":"https://www.exploit-db.com/exploits/18329"},{"source":"nuclei","id":"CVE-2012-0392","title":"Apache Struts2 S2-008 RCE","type":"detection template","url":"https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2012/CVE-2012-0392.yaml"}],"fixes":[{"ecosystem":"Maven","package":"org.apache.struts:struts2-core","fixed_in":["2.2.3.1"],"sources":["ghsa","osv"]},{"ecosystem":"Maven","package":"org.apache.struts.xwork:xwork-core","fixed_in":["2.2.3.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Maven","package":"org.apache.struts:struts2-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.3.1"}]}]},{"source":"ghsa","ecosystem":"Maven","package":"org.apache.struts.xwork:xwork-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.3.1"}]}]},{"source":"osv","ecosystem":"Maven","package":"org.apache.struts:struts2-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.3.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"]},{"source":"osv","ecosystem":"Maven","package":"org.apache.struts.xwork:xwork-core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.3.1"}]}],"versions":["2.2.1","2.2.1.1","2.2.3"]}],"products":[{"vendor":"apache","product":"struts"}],"references":[{"url":"http://www.exploit-db.com/exploits/18329","tags":["exploit","x_refsource_EXPLOIT-DB","x_transferred","Exploit","Third Party Advisory","VDB Entry","web"]},{"url":"http://archives.neohapsis.com/archives/bugtraq/2012-01/0031.html","tags":["mailing-list","x_refsource_BUGTRAQ","x_transferred","Broken Link","web"]},{"url":"http://struts.apache.org/2.x/docs/version-notes-2311.html","tags":["x_refsource_CONFIRM","x_transferred","Release Notes","Vendor Advisory","web"]},{"url":"http://struts.apache.org/2.x/docs/s2-008.html","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory","web"]},{"url":"https://www.sec-consult.com/files/20120104-0_Apache_Struts2_Multiple_Critical_Vulnerabilities.txt","tags":["x_refsource_MISC","x_transferred","Broken Link"]},{"url":"https://lists.immunityinc.com/pipermail/dailydave/2012-January/000011.html","tags":["mailing-list","x_refsource_MLIST","x_transferred","Exploit","Third Party Advisory","web"]},{"url":"http://secunia.com/advisories/47393","tags":["third-party-advisory","x_refsource_SECUNIA","x_transferred","Third Party Advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2012-0392","tags":["advisory"]},{"url":"https://github.com/apache/struts/commit/25e50069d60434a30395e3a98357ffba2bed427e","tags":["web"]},{"url":"https://web.archive.org/web/20120612142634/https://sec-consult.com/files/20120104-0_Apache_Struts2_Multiple_Critical_Vulnerabilities.txt","tags":["web"]},{"url":"https://web.archive.org/web/20140723153720/http://secunia.com/advisories/47393/"},{"url":"https://github.com/advisories/GHSA-2ppp-xj34-vvf7"},{"url":"https://github.com/apache/struts","tags":["package"]},{"url":"https://web.archive.org/web/20140723153720/http://secunia.com/advisories/47393","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2012-0392","description":"The CookieInterceptor component in Apache Struts before 2.3.1.1 does not use the parameter-name whitelist, which allows remote attackers to execute arbitrary commands via a crafted HTTP Cookie header that triggers Java code execution through a static method.","status":"published","published":"2012-01-08T15:00:00Z","modified":"2024-09-16T22:20:33.133Z","updated_at":"2026-11-02T14:34:52.638543Z"}],"euvd":[{"id":"EUVD-2022-2028","description":"The CookieInterceptor component in Apache Struts before 2.3.1.1 does not use the parameter-name whitelist, which allows remote attackers to execute arbitrary commands via a crafted HTTP Cookie header that triggers Java code execution through a static method.","status":"published","published":"2012-01-08T15:00:00Z","modified":"2024-09-16T22:20:33Z","updated_at":"2026-11-03T00:55:03.975609Z"}],"ghsa":[{"id":"GHSA-2ppp-xj34-vvf7","title":"Apache Struts's CookieInterceptor component does not use the parameter-name whitelist","description":"The CookieInterceptor component in Apache Struts before 2.3.1.1 does not use the parameter-name whitelist, which allows remote attackers to execute arbitrary commands via a crafted HTTP Cookie header that triggers Java code execution through a static method.","status":"published","published":"2022-05-04T00:29:43Z","modified":"2023-12-27T20:13:28Z","updated_at":"2026-11-02T14:37:28.753349Z"}],"nvd":[{"id":"CVE-2012-0392","description":"The CookieInterceptor component in Apache Struts before 2.3.1.1 does not use the parameter-name whitelist, which allows remote attackers to execute arbitrary commands via a crafted HTTP Cookie header that triggers Java code execution through a static method.","status":"published","published":"2012-01-08T15:55:01.373Z","modified":"2026-06-16T23:37:12.347Z","cvss":[{"version":"2.0","score":6.8,"vector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"updated_at":"2026-11-02T14:02:13.468343Z"}],"osv":[{"id":"GHSA-2ppp-xj34-vvf7","title":"Apache Struts's CookieInterceptor component does not use the parameter-name whitelist","description":"The CookieInterceptor component in Apache Struts before 2.3.1.1 does not use the parameter-name whitelist, which allows remote attackers to execute arbitrary commands via a crafted HTTP Cookie header that triggers Java code execution through a static method.","status":"published","published":"2022-05-04T00:29:43Z","modified":"2024-12-05T05:39:21.454119Z","updated_at":"2026-11-02T15:46:34.700741Z"}]}}
