{"id":"CVE-2026-73499","state":"PUBLISHED","title":"etcd: Watch API authorization bypass via open-ended range requests","description":"etcd is a distributed key-value store for the data of a distributed system. Prior to versions 3.5.33, 3.6.14, and 3.7.1, a user granted READ permission on a single exact key can use the Watch gRPC API with clientv3.WithFromKey() to receive watch events for every key lexicographically greater than or equal to the permitted key. In server/etcdserver/api/v3rpc/watch.go, the open-ended RangeEnd sentinel is rewritten before the RBAC permission check in server/auth/range_perm_cache.go function isRangeOpPermitted, causing the request to be treated as an exact-key watch. Range/Get and DeleteRange requests are not affected, and the issue affects only clusters with authentication enabled. This issue is fixed in versions 3.5.33, 3.6.14, and 3.7.1.","publishedAt":"2026-08-12T21:20:31.888Z","updatedAt":"2026-08-14T22:19:59.624Z","severity":{"score":7.1,"label":"High","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","source":"GitHub_M"},"assigner":"GitHub_M","products":["etcd-io etcd"],"affected":[{"vendor":"etcd-io","product":"etcd","versions":[{"version":"< 3.5.33","status":"affected"},{"version":">= 3.6.0, < 3.6.14","status":"affected"},{"version":">= 3.7.0-alpha.0, < 3.7.1","status":"affected"}]}],"references":["https://github.com/etcd-io/etcd/security/advisories/GHSA-xg4h-6gfc-h4m8","https://github.com/etcd-io/etcd/commit/6643f80602461a6095c9b294b6512fd9719bef41","https://github.com/etcd-io/etcd/commit/7cf71ec9e2ec54230a5454392fa4ffd4574b41ed","https://github.com/etcd-io/etcd/commit/afeaa624da19085b47fb5ccc7c22a8c421bc2eae","https://github.com/etcd-io/etcd/commit/e863b001bbf3367003a543aa3099db9892134cd7","https://github.com/etcd-io/etcd/releases/tag/v3.5.33","https://github.com/etcd-io/etcd/releases/tag/v3.6.14","https://github.com/etcd-io/etcd/releases/tag/v3.7.1"],"weaknesses":["CWE-863"],"ingestedAt":"2026-10-29T20:12:58.252Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/73xxx/CVE-2026-73499.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-73499","state":"PUBLISHED","datePublished":"2026-08-12T21:20:31.888Z","dateUpdated":"2026-08-14T22:19:59.624Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2026-08-12T19:00:33.736Z"},"containers":{"cna":{"title":"etcd: Watch API authorization bypass via open-ended range requests","descriptions":[{"lang":"en","value":"etcd is a distributed key-value store for the data of a distributed system. Prior to versions 3.5.33, 3.6.14, and 3.7.1, a user granted READ permission on a single exact key can use the Watch gRPC API with clientv3.WithFromKey() to receive watch events for every key lexicographically greater than or equal to the permitted key. In server/etcdserver/api/v3rpc/watch.go, the open-ended RangeEnd sentinel is rewritten before the RBAC permission check in server/auth/range_perm_cache.go function isRangeOpPermitted, causing the request to be treated as an exact-key watch. Range/Get and DeleteRange requests are not affected, and the issue affects only clusters with authentication enabled. This issue is fixed in versions 3.5.33, 3.6.14, and 3.7.1."}],"affected":[{"vendor":"etcd-io","product":"etcd","versions":[{"version":"< 3.5.33","status":"affected"},{"version":">= 3.6.0, < 3.6.14","status":"affected"},{"version":">= 3.7.0-alpha.0, < 3.7.1","status":"affected"}]}],"references":[{"url":"https://github.com/etcd-io/etcd/security/advisories/GHSA-xg4h-6gfc-h4m8","name":"https://github.com/etcd-io/etcd/security/advisories/GHSA-xg4h-6gfc-h4m8","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/etcd-io/etcd/commit/6643f80602461a6095c9b294b6512fd9719bef41","name":"https://github.com/etcd-io/etcd/commit/6643f80602461a6095c9b294b6512fd9719bef41","tags":["x_refsource_MISC"]},{"url":"https://github.com/etcd-io/etcd/commit/7cf71ec9e2ec54230a5454392fa4ffd4574b41ed","name":"https://github.com/etcd-io/etcd/commit/7cf71ec9e2ec54230a5454392fa4ffd4574b41ed","tags":["x_refsource_MISC"]},{"url":"https://github.com/etcd-io/etcd/commit/afeaa624da19085b47fb5ccc7c22a8c421bc2eae","name":"https://github.com/etcd-io/etcd/commit/afeaa624da19085b47fb5ccc7c22a8c421bc2eae","tags":["x_refsource_MISC"]},{"url":"https://github.com/etcd-io/etcd/commit/e863b001bbf3367003a543aa3099db9892134cd7","name":"https://github.com/etcd-io/etcd/commit/e863b001bbf3367003a543aa3099db9892134cd7","tags":["x_refsource_MISC"]},{"url":"https://github.com/etcd-io/etcd/releases/tag/v3.5.33","name":"https://github.com/etcd-io/etcd/releases/tag/v3.5.33","tags":["x_refsource_MISC"]},{"url":"https://github.com/etcd-io/etcd/releases/tag/v3.6.14","name":"https://github.com/etcd-io/etcd/releases/tag/v3.6.14","tags":["x_refsource_MISC"]},{"url":"https://github.com/etcd-io/etcd/releases/tag/v3.7.1","name":"https://github.com/etcd-io/etcd/releases/tag/v3.7.1","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"LOW","userInteraction":"NONE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"NONE","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","baseScore":7.1,"baseSeverity":"HIGH","vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","version":"4.0"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-863","lang":"en","description":"CWE-863: Incorrect Authorization","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2026-08-12T21:20:31.888Z"},"source":{"advisory":"GHSA-xg4h-6gfc-h4m8","discovery":"UNKNOWN"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-08-14T22:19:48.980697Z","id":"CVE-2026-73499","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-08-14T22:19:59.624Z"}}]}}}