CVE-2026-73500
etcd vulnerability analysis and mitigation

Overview

CVE-2026-73500 is a Denial of Service (DoS) vulnerability in etcd, a distributed key-value store widely used as the backing store for Kubernetes. A network attacker who can reach an etcd TLS listener can open many TCP connections without ever sending a TLS ClientHello message, causing unbounded goroutine and memory map growth that exhausts the etcd process memory. Affected versions include all etcd releases prior to 3.5.33, 3.6.0–3.6.13, and 3.7.0-alpha.0–3.7.0. The vulnerability was disclosed on August 12, 2026, and carries a CVSS v4.0 base score of 8.7 (High) (Feedly, OSV).

Technical details

The root cause is classified as CWE-770 (Allocation of Resources Without Limits or Throttling). In client/pkg/transport/listener_tls.go, the tlsListener.acceptLoop() function spawns a new goroutine for each accepted TCP connection and immediately tracks it in a pending map before any TLS handshake occurs. Because no deadline was set on the connection, tls.Conn.Handshake() blocks indefinitely if the client never sends a ClientHello, causing both the goroutine and the map entry to persist forever. An attacker can automate this by opening thousands of TCP connections to the etcd TLS port without completing the handshake, leading to memory exhaustion. Notably, enabling mutual TLS (mTLS) does not mitigate this issue, as the connection is tracked before the client sends any data (etcd PR #22130, etcd commit 8e4dd06).

Impact

Successful exploitation causes memory exhaustion in the etcd process, resulting in a complete loss of availability for the etcd cluster. When etcd backs a Kubernetes deployment, this directly impacts the Kubernetes control plane, potentially rendering the entire cluster unmanageable. There is no confidentiality or integrity impact — the vulnerability is purely an availability (DoS) issue (Feedly, etcd PR #22130).

Exploitability

No public proof-of-concept exploit code or active in-the-wild exploitation has been reported as of the disclosure date. The NVD SSVC assessment classifies exploitation as "none" and the attack as "automatable," meaning the technique can be scripted with minimal effort using standard TCP tools. The EPSS score is approximately 0.396%, indicating a low but non-negligible probability of exploitation in the near term. The vulnerability is not currently listed in the CISA Known Exploited Vulnerabilities (KEV) catalog (Feedly, OSV).

Exploitation steps

  1. Reconnaissance: Identify internet-facing or network-accessible etcd instances running TLS listeners (default port 2379 for client traffic, 2380 for peer traffic) using tools like Shodan, Censys, or nmap, targeting versions prior to 3.5.33, 3.6.14, or 3.7.1.
  2. Open TCP connections without handshake: Use a scripted tool (e.g., a simple Python socket script or hping3) to open a large number of TCP connections to the etcd TLS port and deliberately withhold the TLS ClientHello message, keeping connections open indefinitely.
  3. Sustain connection flood: Maintain hundreds or thousands of such half-open TLS connections simultaneously. Each connection causes etcd to spawn a goroutine blocked in tls.Conn.Handshake() and add an entry to the internal pending map.
  4. Exhaust memory: As goroutines and map entries accumulate without bound, the etcd process exhausts available system memory, causing it to crash or become unresponsive, taking down the etcd cluster and any dependent Kubernetes control plane (etcd PR #22130, Feedly).

Indicators of compromise

  • Network: Unusually high number of TCP connections in SYN_RECEIVED or ESTABLISHED state on etcd TLS ports (2379, 2380) from one or more source IPs, with no corresponding TLS handshake completion; connections persisting for extended periods without data transfer.
  • Process: Rapidly growing number of goroutines in the etcd process (observable via etcd metrics endpoint /metricsgo_goroutines counter spiking abnormally); increasing resident memory usage of the etcd process without corresponding increase in stored data.
  • Logs: etcd server logs showing a large number of pending TLS connections; potential OOM (out-of-memory) kernel messages or etcd process crash/restart events in system logs (/var/log/syslog, journalctl -u etcd).
  • Metrics: Etcd etcd_network_client_grpc_received_bytes_total remaining flat while connection counts rise; Kubernetes control plane components (kube-apiserver) reporting etcd connectivity errors or timeouts (etcd PR #22130).

Mitigation and workarounds

Upgrade etcd to one of the patched versions: 3.5.33, 3.6.14, or 3.7.1. The fix introduces a tlsHandshakeTimeout of 10 seconds via tlsConn.SetDeadline() before calling tls.Conn.Handshake(), ensuring that connections that never complete a handshake are automatically cleaned up. After a successful handshake, the deadline is cleared to restore normal operation. No configuration-based workaround fully mitigates this issue, as mTLS does not prevent the attack; network-level controls (firewalls, security groups) restricting access to etcd ports to trusted sources are recommended as a defense-in-depth measure while patching (etcd commit 8e4dd06, etcd PR #22130).

Community reactions

The fix was authored by Benjamin Wang (GitHub: ahrtr) and merged on July 21, 2026, with cherry-picks to the 3.5, 3.6, and 3.7 release branches. A community contributor (brandond) raised the concern that mTLS does not mitigate the issue since connections are tracked before any client data is sent, which was acknowledged by the author. The Go vulnerability database (govulndb) tracked this as GHSA-6vch-q96h-7gc3, and Tenable released a Nessus detection plugin (ID 335145) shortly after disclosure (etcd PR #22130, Tenable).

Additional resources


SourceThis report was generated using AI

Related etcd vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-39821CRITICAL9.6
  • cAdvisor logocAdvisor
  • gatekeeper-fips-3.21
NoYesMay 22, 2026
CVE-2026-73500HIGH8.7
  • etcd logoetcd
  • kots
NoYesAug 12, 2026
CVE-2026-59818HIGH8.1
  • etcd logoetcd
  • etcd
NoYesJul 08, 2026
CVE-2026-56852HIGH7.5
  • cAdvisor logocAdvisor
  • kubewarden-controller
NoYesJul 21, 2026
CVE-2026-73499HIGH7.1
  • etcd logoetcd
  • dapr-1.14
NoYesAug 12, 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