Skip to main content

Apache ZooKeeper CVE-2026-100235

CRITICAL
2026-11-03
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Hold or obtain a current ACL permission
  2. Delivery
    Observe or race an in-flight setACL revocation
  3. Exploit
    Submit write/delete/setACL in the pre-commit window
  4. Execution
    Operation authorized against stale ACL, applied post-revocation
  5. Impact
    Re-grant self full permissions to persist access

Vulnerability Assessment

Exploitation Conditions

Exploitation requires an in-flight setACL operation on a target znode and the attacker's request to be prepared/authorized within the window after that setACL is submitted but before it commits (the TOCTOU race, reflected as AT:P). In the general case the attacker must already hold the permission being revoked (PR:L) - e.g. a client losing write access that continues to issue writes/deletes or re-grants itself permissions. The vendor identifies a specific unauthenticated case: deployments transitioning from the default OPEN_ACL_UNSAFE ACL to a restrictive ACL, where any unauthenticated client can exploit the transition window. Limiting factors: there must be an active ACL change to race, the window is timing-bound, and impact is limited to integrity (unauthorized writes/deletes/ACL changes) - no confidentiality or availability impact is claimed. Updating to 3.8.8 or 3.9.7 is the fix.

Impact

This is a moderate-severity authorization-bypass (TOCTOU race) in Apache ZooKeeper's setACL handling, and the available signals point to a real but conditional risk rather than a drop-everything emergency. The only supplied CVSS is the vendor's CVSS 4.0 base score of 6.0 (CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N): network-reachable, low attack complexity, but with Attack Requirements Present (AT:P) - consistent with the race-condition window the description relies on - and low privileges required (PR:L), impacting integrity only (VI:H; VC/VA = N). No CVSS 3.1 vector, EPSS score, or SSVC exploitation/automatable values were provided, so probabilistic exploitation likelihood cannot be quantified from this input. The vuln.today Decision label is 'awaiting_data', i.e. not yet prioritized as act_now or emergency. There is no CISA KEV listing and no verified exploit code in the references (only the oss-security advisory and the vendor site), so exploitation status is: no public exploit identified at time of analysis. A notable conflict/nuance: the official vector encodes PR:L (authenticated, holding some permission), yet the description explicitly states that in deployments transitioning from the default OPEN_ACL_UNSAFE ACL to a restrictive ACL, any unauthenticated client can exploit the window - so the PR:L metric understates the worst-case (transition) scenario, where authentication is effectively not required. Net: prioritize for patching on ensembles that undergo ACL tightening or rely on ACL revocation for security, but the AT:P race requirement and the need for an in-flight setACL limit opportunistic mass exploitation.

Exploit ScenarioDerived

An administrator tightens a znode's ACL via setACL (for example revoking a client's write access, or migrating a tree from OPEN_ACL_UNSAFE to a restrictive ACL). A client that still held the old permission submits write/delete/setACL requests timed to land in the window after the setACL is submitted but before it commits; those requests are authorized against the stale pre-revocation ACL yet applied after the change takes effect, letting the client persist writes or even re-grant itself full permissions. No public exploit code is identified at time of analysis; exploitation depends on hitting the race window (AT:P) around an active ACL change.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
No patch listed yet

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Nov 03, 2026

ACL enforcement bypass in Apache ZooKeeper 3.8.x and 3.9.x occurs when setACL changes are not published to the node's outstanding change record, allowing a request authorized against the old ACL to commit after the revocation. An authenticated client that already holds the permission being revoked can use the race to commit writes or deletes or to re-grant permissions, and the vendor notes an unauthenticated path during a transition from OPEN_ACL_UNSAFE to a restrictive ACL. No public exploit identified at time of analysis; impact is integrity-only, and the fixed releases are 3.8.8 and 3.9.7.

RemediationAI

Upgrade to Apache ZooKeeper 3.8.8 or 3.9.7, the fixed releases named in the vendor advisory. The input does not describe a supported workaround, so remediation should center on deploying one of those fixed versions; the oss-security advisory (https://seclists.org/oss-sec/2026/q4/484) and the Apache ZooKeeper project page (https://zookeeper.apache.org/) are the available references. The vendor identifies deployments transitioning from the default OPEN_ACL_UNSAFE ACL to a restrictive ACL as an unauthenticated exploitation path, so that scenario warrants particular attention when scheduling the upgrade.

Affected ProductsAI

Apache ZooKeeper versions 3.9.0 through 3.9.6 and 3.8.0 through 3.8.7 are affected; the vendor advisory states the issue affects Apache ZooKeeper up to and including 3.9.6 and recommends upgrading to 3.8.8 or 3.9.7. No CPE strings were provided in the input data. The available references are the oss-security advisory at https://seclists.org/oss-sec/2026/q4/484 and the Apache ZooKeeper project page at https://zookeeper.apache.org/.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Apache ZooKeeper is a replicated coordination service whose data tree consists of znodes governed by ACLs. In setACL request handling, the pending ACL change is not published to the server's outstanding change record for that node, creating a time-of-check-to-time-of-use window: a request prepared and authorized after setACL is submitted but before it commits is checked against the previous ACL yet applied to the data tree after the ACL change commits. The vendor CVSS 4.0 score is 6.0 (medium) with AT:P and integrity impact I:H, and the assessed CVSS 3.1 vector is AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N. CWE data was not provided in the input; the described weakness is incorrect authorization due to a TOCTOU race.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

vuln.today AI 5.3 MEDIUM

Network-reachable (AV:N); AC:H for the TOCTOU race timing window; PR:L since the general case needs a currently-held permission; integrity-only impact (I:H), no confidentiality or availability effect.

3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
4.0 AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Executive ViewAI

Why It Matters

A critical ACL enforcement bypass in Apache ZooKeeper 3.8.x and 3.9.x allows a client to commit unauthorized writes, deletes, or permission re-grants by racing an ACL revocation, undermining the integrity of coordination data used by dependent services. Leadership should care because compromised ZooKeeper integrity can cascade into configuration tampering or denial of service across the distributed systems that rely on it, though no public exploit has been identified.

Business Impact: High
Compensating Controls

Restrict network access to ZooKeeper to trusted clients, enforce strong authentication and authorization on all connections, avoid transitional OPEN_ACL_UNSAFE states, and monitor for anomalous ACL changes or unauthorized writes; upgrade to fixed releases 3.8.8 or 3.9.7 as soon as possible.

Threat Intelligence Overview

Prevalence
High
widely deployed coordination kernel underpinning Kafka, Hadoop, HBase clusters
Data Quality
1 sources
Confidence: Low

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS N/A
Patch available No
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy