Patchfirst
CVE-2014-3120 KEVPublic exploit High · 8.1 EPSS 88.6%

Elasticsearch Remote Code Execution Vulnerability

Elastic · Elasticsearch

Summary

Elasticsearch versions before 1.2 contain a flaw in the default configuration, which enables dynamic scripting and lets remote attackers execute arbitrary MVEL expressions and Java code through the source parameter of the _search endpoint. Exploitation requires network access and low privileges, with no user interaction, and the issue is a policy violation only where the user has not run Elasticsearch in its own independent virtual machine.

Official description · NVD

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.

Breakdown
68.6 / 100
Exploited
Yes, in CISA KEV
Reports
0
Tactics
2/15

How an attack unfolds

Based on mappings. Select a step to see the evidence.
  1. How attackers get in

  2. What they do

First seen exploited 8 years after disclosure. Public exploit code (Metasploit) was available 8 months before disclosure.

  1. Public exploit codeMetasploit8 mo before
  2. Disclosedday 0
  3. First seen exploitedVulnCheck KEV evidenceAdded to CISA KEVEU database agrees+8 yrs

CISA KEV listing is when exploitation was confirmed, not necessarily the first attack.

techniques

2 , grouped by in kill-chain order, 2 cited passages 2

Initial AccessTA0001

Exploit Public-Facing Application T1190 Medium
AI mapping from the description · how it is exploited

remote exploitation of public-facing Elasticsearch search endpoint

allows remote attackers to execute arbitrary MVEL expressions
From the official description (NVD) Original (opens in a new tab) ↗

ExecutionTA0002

Command and Scripting Interpreter T1059 Medium
AI mapping from the description · primary impact

arbitrary script and Java code execution

allows remote attackers to execute arbitrary MVEL expressions and Java code
From the official description (NVD) Original (opens in a new tab) ↗

Detection

0 rules for this CVE · 244 general rules for its techniques

Rules for this CVE

0 that reference CVE-2014-3120 directly.

CVE-specific rules are not available in this build. Search SigmaHQ ↗

Sigma rules © SigmaHQ, Detection Rule License 1.1; linked, not reproduced.

Am I affected? What do I upgrade to?

From GitHub Security Advisories and OSV

1 package in 1 ecosystem. Main package: org.elasticsearch:elasticsearch.

Mavenorg.elasticsearch:elasticsearchGHSA-mrfm-jxgf-2h6v

Upgrade to 1.6.1 or later

Fixes this CVE and 2 other known vulnerabilities in this package (CVE-2015-1427, CVE-2015-5531).

Set the version to 1.6.1 or later in your pom.xml or build.gradle.

First fixed in 1.4.0.Beta1 for CVE-2014-3120.

Affected versions

If you runUpgrade to
All versions before 1.4.0.Beta11.6.1first fix for this CVE: 1.4.0.Beta1

“Up to” means the second version is the fix and is not affected.

Check your lockfile against all CVEs

What security researchers reported

Not named in any threat report yet

Also mentioned in 50 community threat pulses (AlienVault OTX)

Weaker evidence

Pulses are indicator collections that anyone can publish. A mention is not confirmation of exploitation.

References

9 links, grouped by NVD tag (8 duplicates merged)
↑ ↓ chooseEnter openEsc close