{"id":"CVE-2014-3120","aliases":["EUVD-2022-5879","GHSA-mrfm-jxgf-2h6v"],"status":"published","title":"Elasticsearch Improper Access Control vulnerability","description":"The default configuration in Elasticsearch before 1.2 enables dynamic scripting, which allows remote attackers to execute arbitrary MVEL expressions and Java code via the source parameter to _search.  NOTE: this only violates the vendor's intended security policy if the user does not run Elasticsearch in its own independent virtual machine.","severity":{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.88559,"percentile":0.99774,"model":"v2026.06.15"},"facts":{"in_kev":true,"known_exploited":true,"public_exploit":true,"fix_available":true},"cwes":["CWE-284"],"published":"2014-07-28T19:00:00Z","modified":"2026-06-17T00:07:37Z","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/elasticsearch/script_mvel_rce","title":"ElasticSearch Dynamic Script Arbitrary Java Execution","type":"exploit","platform":"Java","date":"2013-12-09","verified":true,"url":"https://www.rapid7.com/db/modules/exploit/multi/elasticsearch/script_mvel_rce"},{"source":"pocgithub","id":"jeffgeiger/es_inject","title":"jeffgeiger/es_inject","date":"2014-05-13","url":"https://github.com/jeffgeiger/es_inject"},{"source":"exploitdb","id":"EDB-33370","title":"ElasticSearch - Remote Code Execution","type":"webapps","platform":"multiple","date":"2014-05-15","verified":true,"url":"https://www.exploit-db.com/exploits/33370"},{"source":"exploitdb","id":"EDB-33588","title":"ElasticSearch Dynamic Script - Arbitrary Java Execution (Metasploit)","type":"remote","platform":"java","date":"2014-05-30","verified":true,"url":"https://www.exploit-db.com/exploits/33588"},{"source":"pocgithub","id":"echohtp/ElasticSearch-CVE-2014-3120","title":"echohtp/ElasticSearch-CVE-2014-3120","date":"2014-07-07","url":"https://github.com/echohtp/ElasticSearch-CVE-2014-3120"},{"source":"pocgithub","id":"xpgdgit/CVE-2014-3120","title":"xpgdgit/CVE-2014-3120","date":"2022-08-01","url":"https://github.com/xpgdgit/CVE-2014-3120"},{"source":"pocgithub","id":"Dungsocool/CVE-2014-3120","title":"Dungsocool/CVE-2014-3120","date":"2026-05-31","url":"https://github.com/Dungsocool/CVE-2014-3120"},{"source":"pocgithub","id":"CyberCTF/vulhub-elasticsearch-cve-2014-3120","title":"CyberCTF/vulhub-elasticsearch-cve-2014-3120","date":"2026-10-08","url":"https://github.com/CyberCTF/vulhub-elasticsearch-cve-2014-3120"},{"source":"nuclei","id":"CVE-2014-3120","title":"ElasticSearch v1.1.1/1.2 RCE","type":"detection template","url":"https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2014/CVE-2014-3120.yaml"}],"fixes":[{"ecosystem":"Maven","package":"org.elasticsearch:elasticsearch","fixed_in":["1.4.0.Beta1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Maven","package":"org.elasticsearch:elasticsearch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.0.Beta1"}]}]},{"source":"osv","ecosystem":"Maven","package":"org.elasticsearch:elasticsearch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.0.Beta1"}]}],"versions":["0.10.0","0.11.0","0.12.0","0.12.1","0.13.0","0.13.1","0.14.0","0.14.1","0.14.2","0.14.3","0.14.4","0.15.0","0.15.1","0.15.2","0.16.0","0.16.1","0.16.2","0.16.3","0.16.4","0.16.5","0.17.0","0.17.1","0.17.10","0.17.2","0.17.3","0.17.4","0.17.5","0.17.6","0.17.7","0.17.8","0.17.9","0.18.0","0.18.1","0.18.2","0.18.3","0.18.4","0.18.5","0.18.6","0.18.7","0.19.0","0.19.0.RC1","0.19.0.RC2","0.19.0.RC3","0.19.1","0.19.10","0.19.11","0.19.12","0.19.2","0.19.3","0.19.4","0.19.5","0.19.6","0.19.7","0.19.8","0.19.9","0.20.0","0.20.0.RC1","0.20.1","0.20.2","0.20.3","0.20.4","0.20.5","0.20.6","0.6.0","0.7.0","0.7.1","0.8.0","0.9.0","0.90.0","0.90.0.Beta1","0.90.0.RC1","0.90.0.RC2","0.90.1","0.90.10","0.90.11","0.90.12","0.90.13","0.90.2","0.90.3","0.90.4","0.90.5","0.90.6","0.90.7","0.90.8","0.90.9","1.0.0","1.0.0.Beta1","1.0.0.Beta2","1.0.0.RC1","1.0.0.RC2","1.0.1","1.0.2","1.0.3","1.1.0","1.1.1","1.1.2","1.2.0","1.2.1","1.2.2","1.2.3","1.2.4","1.3.0","1.3.1","1.3.2","1.3.3","1.3.4","1.3.5","1.3.6","1.3.7","1.3.8","1.3.9"]}],"products":[{"vendor":"elastic","product":"elasticsearch"}],"references":[{"url":"https://www.elastic.co/blog/logstash-1-4-3-released","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory","web"]},{"url":"http://www.exploit-db.com/exploits/33370","tags":["exploit","x_refsource_EXPLOIT-DB","x_transferred","Exploit","web"]},{"url":"http://www.securityfocus.com/bid/67731","tags":["vdb-entry","x_refsource_BID","x_transferred","Exploit"]},{"url":"http://www.osvdb.org/106949","tags":["vdb-entry","x_refsource_OSVDB","x_transferred","Broken Link"]},{"url":"http://bouk.co/blog/elasticsearch-rce/","tags":["x_refsource_MISC","x_transferred","Exploit"]},{"url":"http://www.rapid7.com/db/modules/exploit/multi/elasticsearch/script_mvel_rce","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","web"]},{"url":"https://www.found.no/foundation/elasticsearch-security/#staying-safe-while-developing-with-elasticsearch","tags":["x_refsource_MISC","x_transferred","Exploit","web"]},{"url":"https://www.elastic.co/community/security/","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory"]},{"url":"https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2014-3120","tags":["government-resource","US Government Resource","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2014-3120","tags":["advisory"]},{"url":"https://www.elastic.co/community/security","tags":["web"]},{"url":"http://bouk.co/blog/elasticsearch-rce","tags":["web"]},{"url":"https://github.com/elastic/elasticsearch/issues/7151","tags":["web"]},{"url":"https://github.com/elastic/elasticsearch/pull/7642","tags":["web"]},{"url":"https://github.com/elastic/elasticsearch/commit/bd0eb32d9c3c3f5b6e5f8630c859cd04bdcd4e06","tags":["web"]},{"url":"https://github.com/elastic/elasticsearch/commit/f9de8b65898509e038e33215db0720b508477a12","tags":["web"]},{"url":"https://web.archive.org/web/20140813071419/http://www.securityfocus.com/bid/67731","tags":["web"]},{"url":"https://github.com/advisories/GHSA-mrfm-jxgf-2h6v"},{"url":"https://github.com/elastic/elasticsearch","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2014-3120","description":"The default configuration in Elasticsearch before 1.2 enables dynamic scripting, which allows remote attackers to execute arbitrary MVEL expressions and Java code via the source parameter to _search.  NOTE: this only violates the vendor's intended security policy if the user does not run Elasticsearch in its own independent virtual machine.","status":"published","published":"2014-07-28T19:00:00Z","modified":"2025-10-22T00:05:37.084Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N","level":"high","assessor":"adp"}],"cwes":["CWE-284"],"updated_at":"2026-11-02T14:33:44.23164Z"}],"euvd":[{"id":"EUVD-2022-5879","description":"The default configuration in Elasticsearch before 1.2 enables dynamic scripting, which allows remote attackers to execute arbitrary MVEL expressions and Java code via the source parameter to _search.  NOTE: this only violates the vendor's intended security policy if the user does not run Elasticsearch in its own independent virtual machine.","status":"published","published":"2014-07-28T19:00:00Z","modified":"2025-10-22T00:05:37Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N","level":"high"}],"exploited_since":"2022-03-25","updated_at":"2026-11-02T19:49:39.244432Z"}],"ghsa":[{"id":"GHSA-mrfm-jxgf-2h6v","title":"Elasticsearch Improper Access Control vulnerability","description":"The default configuration in Elasticsearch before 1.4.0.Beta1 enables dynamic scripting, which allows remote attackers to execute arbitrary MVEL expressions and Java code via the source parameter to _search.  NOTE: this only violates the vendor's intended security policy if the user does not run Elasticsearch in its own independent virtual machine.","status":"published","published":"2022-05-17T03:28:58Z","modified":"2025-10-22T19:34:16Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N/E:H","level":"high"}],"cwes":["CWE-284"],"updated_at":"2026-11-02T14:39:03.380616Z"}],"kev":[{"id":"CVE-2014-3120","title":"Elasticsearch Remote Code Execution Vulnerability","description":"Elasticsearch enables dynamic scripting, which allows remote attackers to execute arbitrary MVEL expressions and Java code.","cwes":["CWE-284"],"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-2014-3120","description":"The default configuration in Elasticsearch before 1.2 enables dynamic scripting, which allows remote attackers to execute arbitrary MVEL expressions and Java code via the source parameter to _search.  NOTE: this only violates the vendor's intended security policy if the user does not run Elasticsearch in its own independent virtual machine.","status":"published","published":"2014-07-28T19:55:04.49Z","modified":"2026-06-17T00:07:37.603Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N","level":"high","assessor":"primary"},{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N","level":"high","assessor":"secondary"},{"version":"2.0","score":6.8,"vector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-284"],"updated_at":"2026-11-02T14:02:55.19899Z"}],"osv":[{"id":"GHSA-mrfm-jxgf-2h6v","title":"Elasticsearch Improper Access Control vulnerability","description":"The default configuration in Elasticsearch before 1.4.0.Beta1 enables dynamic scripting, which allows remote attackers to execute arbitrary MVEL expressions and Java code via the source parameter to _search.  NOTE: this only violates the vendor's intended security policy if the user does not run Elasticsearch in its own independent virtual machine.","status":"published","published":"2022-05-17T03:28:58Z","modified":"2025-10-22T19:52:56.202431Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N/E:H","level":"high"}],"cwes":["CWE-284"],"updated_at":"2026-11-02T15:46:52.170928Z"}]}}
