☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Elastic logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 6.5 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H 🐛 CWE-674
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-72686

CVE-2026-72686 Denial of Service in Elastic
📅 PUBLISHED: 2026-08-13 00:00 UTC 🔄 UPDATED: 2026-09-26 06:22 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.37%
👁️
0.37% probability
9.2× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1499
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: United States License: Freemium
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 6.5
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: U Scope Unchanged
C: N Confidentiality None
I: N Integrity None
A: H Availability High
6.5
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Cyber Threat Intelligence Report: CVE-2026-72686


Executive Summary

CVE-2026-72686 is an unpatched denial-of-service (DoS) vulnerability in Elasticsearch that allows a low-privileged authenticated user to terminate a node process by submitting a crafted request containing an excessively long value. The flaw resides in an internal validation component that uses a recursive routine without applying a bound to the length of the value being validated, causing stack exhaustion and a fatal error that crashes the affected node. With a CVSS score of 6.5 (High availability impact, no confidentiality or integrity impact), this vulnerability represents a significant availability risk for organizations running Elasticsearch clusters, particularly those exposing the service to authenticated but untrusted users.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Technical Analysis

Vulnerability Mechanism

The NVD description identifies a recursive stack exhaustion flaw (CWE-674: Uncontrolled Recursion) in Elasticsearch. The vulnerability is triggered through the following mechanism:

  1. Attack Prerequisite: The attacker must be an authenticated user with low privileges on the Elasticsearch instance.

  2. Trigger Vector: The attacker submits a single request containing a crafted user-supplied input. The description does not specify the exact API endpoint or parameter, but the attack surface is any request-bearing input that flows through the vulnerable validation component.

  3. Core Flaw: A specific internal component performs input validation using a recursive routine. Critically, this routine applies no bound on the length of the value being validated. When the input value exceeds a certain length, the recursive validation calls consume all available thread stack space.

  4. Failure Consequence: The recursion causes the thread to exhaust its stack, producing a StackOverflowError (or equivalent fatal error in the JVM). This error is not handled by the surrounding execution paths — meaning the exception propagates without being caught by any error-handling logic in the call stack.

  5. Node Termination: Because the fatal error is unhandled, it terminates the affected Elasticsearch node process entirely, rather than merely failing the individual request. This constitutes a denial-of-service condition.

Technical Context: Elasticsearch Architecture

Elasticsearch is a distributed search and analytics engine built on the Java Virtual Machine (JVM). Each node in a cluster runs as a JVM process. When a node process terminates unexpectedly:

  • Cluster Resilience: If the cluster has multiple nodes with replicas, the cluster can continue serving requests from remaining nodes, but the terminated node's shards must be reallocated, causing temporary performance degradation.
  • Single-Node Deployments: If the cluster consists of a single node (common in development or small production deployments), the termination results in complete service unavailability.
  • Recovery Time: The node must restart and recover its shards, which can take significant time depending on data volume.

Attack Surface

The attack surface includes any authenticated API endpoint that accepts user-supplied input which undergoes validation by the vulnerable recursive component. This likely includes:

  • Index/document creation or update requests with large field values
  • Query requests with complex nested structures
  • Bulk operations with many documents
  • Any request where a string, array, or nested object is validated recursively

Note on Technical Specifics: The NVD description does not disclose the specific endpoint, parameter name, or validation function. Insufficient technical detail is available at the code level. The attack is described at the vulnerability-class level: uncontrolled recursive validation of unbounded-length input causing stack exhaustion.


Exploitation Scenarios

Important Note: No public PoC is available at the time of writing; the attack chain described below is inferred from the vulnerability class and NVD description. Attackers would need to identify the specific request format that reaches the vulnerable recursive validation routine.

Step 1: Reconnaissance and Target Identification

The attacker first identifies Elasticsearch instances accessible over the network. Common discovery methods include:

  • Port Scanning: Elasticsearch typically listens on TCP port 9200 (HTTP) and 9300 (transport protocol).
  • Fingerprinting: HTTP responses to GET / return JSON with cluster name, version, and node information, allowing attackers to confirm the target is Elasticsearch and enumerate the version.
  • Shodan/Censys: Internet-exposed Elasticsearch instances can be discovered via search engine queries (e.g., product:"Elasticsearch").

Step 2: Authentication and Access

The attacker must authenticate with any valid low-privileged account. Options include:

  • Default/Credentialed Access: If the instance uses weak or default credentials, the attacker authenticates directly.
  • Stolen Credentials: Compromised credentials from phishing or credential-stuffing attacks provide the necessary access.
  • Legitimate Account Abuse: An insider with minimal privileges (e.g., a read-only user) can exploit this vulnerability.

If the Elasticsearch cluster has authentication disabled (misconfiguration), any unauthenticated user effectively has low-privileged access and can attempt exploitation.

Step 3: Crafting the Malicious Payload

The attacker crafts a single HTTP request containing a user-supplied input with an unbounded-length value that traverses the vulnerable recursive validation routine. At the vulnerability-class level, the payload construction appears as follows:

  • A long string value (e.g., many megabytes of characters) submitted as a field value in an index document or query.
  • A deeply nested JSON structure (e.g., nested arrays or objects hundreds or thousands of levels deep) that triggers deep recursion during validation.
  • A large array with many elements.

The key requirement is that the input's length exceeds the JVM thread's default stack size (typically 512 KB to 1 MB) when processed recursively. Stack exhaustion occurs when the recursive validation function's stack frames consume all available stack space.

Step 4: Post-Exploitation Impact

Upon successful exploitation:

  • The affected node process terminates immediately.
  • If this is a single-node cluster, all Elasticsearch services become unavailable — search, indexing, and API access all fail.
  • In a multi-node cluster, the node's shards become unavailable; the cluster enters a degraded state (yellow or red status) until the node restarts and recovers.
  • There is no data loss or modification (confidentiality and integrity impacts are none per CVSS), but availability impact is high.
  • The attacker can repeat the request to cause repeated node crashes, preventing service recovery.

Weaponization Considerations

The vulnerability is trivially exploitable once the triggering endpoint is identified:

  • No special tooling is required — any HTTP client (curl, Burp Suite, custom script) can send the crafted request.
  • Single request is sufficient — no repeated requests needed.
  • Low privilege requirement means the attack surface is broad in multi-tenant deployments.

Impact Assessment

Business Impact

Dimension Assessment
Availability High (CVSS A:H) — the primary impact is complete node process termination, leading to service disruption
Confidentiality None — no data exfiltration or unauthorized read access
Integrity None — no data modification or deletion
CVSS Score 6.5 (Medium) — CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Affected Systems

  • Elasticsearch deployments of any size — from single-node development instances to large production clusters.
  • Organizations with authenticated Elasticsearch users who are not fully trusted (e.g., multi-tenant SaaS products, shared clusters across departments, public-facing search applications).
  • Internet-exposed Elasticsearch instances are at highest risk due to their larger attack surface, though authentication requirements limit exploitation to those with valid credentials.

Blast Radius

  • Single-Node Cluster: Complete service outage for the duration of node restart plus shard recovery. This can range from minutes (small datasets) to hours (large datasets).
  • Multi-Node Cluster: Partial outage — the affected node's shards become unavailable. Search requests may return incomplete results, and indexing requests to those shards fail. The cluster health status degrades to YELLOW or RED.
  • Cascading Effects: In clusters with heavy load, the sudden loss of a node can trigger shard reallocation storms, potentially causing additional node failures (cluster instability).
  • Operational Cost: Each exploitation event requires manual or automated intervention to restart the node and monitor recovery, consuming operations team resources.

Detection Guidance

Sigma Rule

title: Elasticsearch Stack Exhaustion DoS Attempt
id: 3a1c8e7f-9b2d-4e5a-8c3f-1d6b9a2c4e7f
status: experimental
description: Detects requests to Elasticsearch with extremely large payloads that may trigger CVE-2026-72686 recursive stack exhaustion
author: Valtersit Threat Intelligence Team
date: 2026/01/01
logsource:
    category: webserver
    product: elasticsearch
detection:
    selection:
        cs-method:
            - 'POST'
            - 'PUT'
        sc-status: 500
    condition: selection
    timeframe: 5m
fields:
    - c-ip
    - cs-uri-stem
    - cs(User-Agent)
    - cs-bytes
falsepositives:
    - Legitimate bulk indexing operations with large payloads
    - Large document indexing for media/content management
level: medium
tags:
    - attack.t1499
    - cve.2026.72686

YARA Rule

rule Elasticsearch_Stack_Exhaustion_DoS_CVE_2026_72686
{
    meta:
        author = "Valtersit Threat Intelligence Team"
        date = "2026-01-01"
        description = "Detects potential exploit payloads for CVE-2026-72686 — extremely long values in Elasticsearch requests"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-72686"
        cve = "CVE-2026-72686"
        severity = "medium"
    
    strings:
        // Look for extremely long repeated character sequences (potential stack exhaustion payloads)
        $long_string = /[a-zA-Z0-9]{100000,}/
        
        // JSON bodies with deeply nested structures (indicates recursive validation target)
        $deep_nesting = /\{"[^"]+":\{"[^"]+":\{"[^"]+":\{"[^"]+":\{"[^"]+":/
        
        // Look for bulk indexing patterns (potential vector for large payloads)
        $bulk_operation = /\/_bulk/
        
        // Common Elasticsearch indexing endpoints
        $index_endpoint = /\/[a-z0-9_-]+\/_doc/
    
    condition:
        any of them
}

Suricata IDS Rule

alert http any any -> any 9200 (msg:"ET EXPLOIT Elasticsearch Stack Exhaustion DoS Attempt (CVE-2026-72686)"; flow:to_server,established; content:"POST"; http_method; content:"/_bulk"; http_uri; content:"Content-Length"; http_header; pcre:"/Content-Length:\s*[0-9]{7,}/i"; classtype:attempted-dos; sid:2026000001; rev:1; metadata:created_at 2026_01_01, updated_at 2026_01_01, cve CVE-2026-72686;)

Elastic Detection

// EQL query to detect HTTP requests to Elasticsearch with abnormally large payloads
sequence by source.ip
    [ network where destination.port == 9200 and 
      network.protocol == "http" and
      event.action == "connection" ]
    [ http where destination.port == 9200 and
      http.request.method == "POST" and
      http.request.bytes > 1000000 and
      http.request.uri == "/_bulk" ]

Splunk SPL Query

index=web sourcetype=access_combined_w3c dest_port=9200
| eval content_length = tonumber(cs_bytes)
| where content_length > 1000000
| stats count by src_ip, cs_uri_stem, _time
| eval threat_name = "CVE-2026-72686 - Elasticsearch Stack Exhaustion DoS"
| table _time, src_ip, cs_uri_stem, content_length, count
| sort - _time

Wazuh OSSEC Rule

<group name="elasticsearch,">

  <rule id="100905" level="10">
    <if_sid>30100</if_sid>
    <match>StackOverflowError|StackOverflow|java.lang.StackOverflowError</match>
    <description>Elasticsearch node terminated: Possible stack exhaustion DoS attack (CVE-2026-72686)</description>
    <group>elasticsearch,denial_of_service,cve_2026_72686,</group>
  </rule>

  <rule id="100906" level="8">
    <if_sid>30100</if_sid>
    <match>OutOfMemoryError: unable to create new native thread</match>
    <description>Elasticsearch thread exhaustion — potential resource exhaustion attack</description>
    <group>elasticsearch,denial_of_service,</group>
  </rule>

  <rule id="100907" level="6">
    <if_sid>30100</if_sid>
    <match>request body too large|413 Request Entity Too Large</match>
    <description>Elasticsearch: Large request rejected — monitor for potential DoS attempts</description>
    <group>elasticsearch,</group>
  </rule>

</group>

Mitigation & Patch Guidance

Patch Status

CRITICAL: CVE-2026-72686 is currently UNPATCHED (Patch Confidence: 0/4). No vendor fix, patch, or upgrade is available from any tracked source. The affected version range is unknown, so all Elasticsearch versions should be considered potentially vulnerable until a patch is released.

1. Immediate Mitigations

Until an official patch is available, the following mitigations can reduce exposure:

  • Network-Level Restrictions: Restrict access to Elasticsearch ports (9200/9300) to trusted networks only. Implement IP allowlisting at the firewall or security group level. Disable internet exposure entirely if the service does not require public access.

  • Authentication Enforcement: Ensure Elasticsearch security features are enabled with strong authentication. Disable anonymous access. Use role-based access control (RBAC) to enforce the principle of least privilege.

  • Rate Limiting: Implement rate limiting on Elasticsearch API endpoints to slow down repeated exploitation attempts.

  • Request Size Limits: Configure a reverse proxy (e.g., nginx, HAProxy) in front of Elasticsearch with client_max_body_size limits to reject excessively large request bodies before they reach Elasticsearch.

  • Resource Starvation Monitoring: Monitor JVM heap usage and thread states. Set up alerts for stack overflow errors and unexpected node restarts.

  • WAF Rules: Deploy Web Application Firewall rules to inspect and block requests with abnormally large payload sizes or suspicious content patterns.

2. Patch and Upgrade Steps

  • Monitor Vendor Advisories: Regularly check the Elastic security advisory page and the Elasticsearch GitHub repository for patch announcements.

  • Subscribe to CVE Notifications: Set up alerts for new updates on CVE-2026-72686 from NVD and Elastic security mailing lists.

  • Test in Staging: Once a patch is released, test thoroughly in a staging environment that mirrors production before deployment.

  • Upgrade Path: When a fixed version becomes available, schedule an upgrade window following Elastic's official upgrade documentation.

3. Long-Term Hardening

  • Multi-Node Redundancy: Maintain at least 2-3 node clusters with proper replica shards. This ensures that a single-node DoS does not cause complete cluster failure.

  • Resource Isolation: Run Elasticsearch in containers or VMs with appropriate JVM thread stack configuration. Consider increasing -Xss (thread stack size) JVM settings to raise the threshold for stack exhaustion, though this is a mitigation, not a fix.

  • Input Validation Hardening: Configure Elasticsearch to enforce maximum document size limits (http.max_content_length setting, default 100 MB) and index-level field length limits.

  • Security Hardening:

    • Enable Elasticsearch Security (formerly X-Pack Security)
    • Require TLS for all communications
    • Regularly audit user privileges and revoke unnecessary access
    • Deploy Elasticsearch behind an API gateway for additional control
  • Monitoring: Implement comprehensive monitoring with tools like Elastic Stack itself, Prometheus, or Datadog to detect node restarts, cluster health degradation, and other indicators of DoS activity.


References

  1. NVD Entry: https://nvd.nist.gov/vuln/detail/CVE-2026-72686
  2. MITRE CVE Record: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-72686
  3. Elastic Security Advisories: https://www.elastic.co/community/security (monitor for upcoming advisory)
  4. CWE-674 Reference: https://cwe.mitre.org/data/definitions/674.html (Uncontrolled Recursion)
  5. ATT&CK T1499 Endpoint DoS: https://attack.mitre.org/techniques/T1499/

Threat Actor Campaigns: No known threat actor campaigns or exploit-in-the-wild evidence has been identified at the time of writing. The vulnerability is classified as having no public PoC or exploit code. However, given its unpatched status and the ease of exploitation once the triggering endpoint is identified, organizations should treat this as a high-priority availability risk and apply mitigations proactively.


Report generated by Valtersit Threat Intelligence Team | Classification: TLP:CLEAR | Date: 2026-01-01

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-72686/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.