CVE-2026-72687
Elasticsearch vulnerability analysis and mitigation

Overview

CVE-2026-72687 is a denial-of-service vulnerability in Elastic's Elasticsearch caused by uncapped memory allocation triggered by a forged opaque identifier. A low-privileged authenticated user can submit a single small crafted request; Elasticsearch deserializes the identifier before validating its origin, and an embedded size value drives an unbounded memory allocation that crashes the affected node. Affected versions span Elasticsearch 8.0.0 through 8.19.19, 9.0.0 through 9.4.4, and 9.5.0. It carries a CVSS v3.1 base score of 6.5 (Medium) (GitHub Advisory, Elastic Advisory). The vulnerability was published on August 13, 2026.

Technical details

The root cause is classified as CWE-789 (Memory Allocation with Excessive Size Value): Elasticsearch decodes and deserializes an opaque identifier embedded in a request before verifying that the identifier was legitimately issued by the cluster. A size field within the forged identifier drives a heap allocation that is neither bounded by application-level caps nor subject to existing memory-usage controls. Because the validation step occurs after deserialization, an attacker can supply an arbitrarily large size value, exhausting available JVM heap and causing a fatal out-of-memory error that terminates the node process (GitHub Advisory, Elastic Advisory).

Impact

Successful exploitation results in a complete availability loss for the targeted Elasticsearch node — the JVM process terminates due to an out-of-memory condition, taking the node offline. There is no confidentiality or integrity impact; however, in single-node deployments or clusters with limited redundancy, crashing one node can cause full service unavailability. Repeated exploitation could be used to sequentially crash multiple nodes in a cluster, causing a sustained denial of service against the entire Elasticsearch deployment (GitHub Advisory).

Exploitability

No public proof-of-concept exploit code is known to exist, and there is no evidence of in-the-wild exploitation at this time (GitHub Advisory). The EPSS score is approximately 0.29% (21st percentile), indicating a low near-term exploitation probability. The NVD SSVC assessment notes the vulnerability is not automatable and has partial technical impact. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities catalog. Exploitation requires low-privilege authenticated access to the Elasticsearch API, which limits the attack surface compared to unauthenticated vulnerabilities.

Exploitation steps

  1. Obtain low-privileged credentials: Acquire any valid Elasticsearch user account with at minimum the ability to submit API requests to the cluster (e.g., a read-only or monitor role).
  2. Craft a forged opaque identifier: Construct a request payload containing a malformed or forged opaque identifier (e.g., a scroll ID, point-in-time ID, or similar cluster-issued token) with an embedded size field set to an excessively large value.
  3. Submit the request: Send a single small HTTP request to the target Elasticsearch node's REST API endpoint that processes the opaque identifier (e.g., a scroll or search-after request), using the forged identifier as the parameter.
  4. Trigger uncapped allocation: Elasticsearch decodes and deserializes the identifier before validating its origin; the embedded size value drives a heap allocation without bounds checking, exhausting JVM heap memory.
  5. Node crash achieved: The out-of-memory condition causes the JVM to terminate the Elasticsearch node process, resulting in denial of service for that node (GitHub Advisory, Elastic Advisory).

Indicators of compromise

  • Logs: Elasticsearch node logs showing java.lang.OutOfMemoryError immediately following an API request containing an unusual or malformed opaque identifier (scroll ID, PIT ID, etc.); unexpected node process termination entries in system logs (e.g., systemd or journald recording Elasticsearch service crash).
  • Network: Single small HTTP requests to Elasticsearch REST API endpoints (e.g., /_search/scroll, /_search) from authenticated users that are immediately followed by node unavailability; anomalous or base64-encoded identifier values in request bodies that are significantly larger than typical cluster-issued tokens.
  • Process: Sudden JVM process exit (non-zero exit code) for the elasticsearch process; repeated Elasticsearch service restarts in a short time window as the process manager attempts recovery.
  • Metrics: Sudden spike in JVM heap usage to 100% followed by a drop to zero (process death) visible in monitoring tools such as Kibana Stack Monitoring or Prometheus/Metricbeat dashboards.

Mitigation and workarounds

Elastic has released patched versions: 8.19.20, 9.4.5, and 9.5.1, which fix this vulnerability by validating the opaque identifier's authenticity before deserialization (Elastic Advisory). Organizations should upgrade to one of these versions as the primary remediation. As a temporary workaround, restrict network access to Elasticsearch API endpoints using firewalls or reverse proxies so that only trusted, known clients can submit requests, reducing the pool of potential attackers. Additionally, monitor Elasticsearch node memory usage and configure alerting on unexpected process restarts to detect exploitation attempts early.

Community reactions

Elastic published a security advisory (ESA-2026-79) on August 13, 2026, disclosing the vulnerability alongside patched releases (Elastic Advisory). NetEye published a security advisory for users of the Elastic Stack 8 integration on August 14, 2026, advising affected customers to apply the patch. Tenable released detection plugins (Nessus plugin 338338) to identify vulnerable Elasticsearch instances. No significant social media controversy or notable independent researcher commentary has been observed beyond standard vulnerability tracking coverage.

Additional resources


SourceThis report was generated using AI

Related Elasticsearch vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-72649HIGH8.8
  • Elasticsearch logoElasticsearch
  • elasticsearch-fips-9.5
NoYesSep 01, 2026
CVE-2026-78607HIGH7.1
  • Elasticsearch logoElasticsearch
  • elasticsearch-9.5
NoYesSep 01, 2026
CVE-2026-72687MEDIUM6.5
  • Elasticsearch logoElasticsearch
  • elasticsearch-fips-9.5
NoYesAug 13, 2026
CVE-2026-78605MEDIUM5.9
  • Elasticsearch logoElasticsearch
  • elasticsearch
NoYesSep 01, 2026
CVE-2026-56143MEDIUM4.9
  • Elasticsearch logoElasticsearch
  • elasticsearch-8.19
NoYesSep 01, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management