CVE-2026-100235 · Package
NO FIX YET · SEE WHAT TO DO
When a ZooKeeper node's ACL is changed with setACL, requests prepared during the change are checked against the old ACL but applied after it takes effect. A client that holds a permission can use this window to write, delete, or re-grant itself access after losing it.
first public Nov 4, 2026 · 1 source
Is this in your stack? Find out in 2 minutes.
Tell InfraStack what you run. It checks this one, and every next one, against your stack.
Ask from here. InfraStack checks the affected versions against your stack and answers in your inbox.
InfraStack checks the affected versions against your stack and answers in Slack, with the evidence and the fix.
Deployments running Apache ZooKeeper up to and including 3.9.6 that change node ACLs with setACL, especially those moving from the default OPEN_ACL_UNSAFE to a restrictive ACL, where any unauthenticated client can exploit the window during the transition. Deployments that never change ACLs on live nodes are less exposed.
Not affected if default-config, no-acl-changes
Who cares hadoop, kafka, self-hosted, zookeeper
zkServer.sh version or the zookeeper jar version in your deployment.OPEN_ACL_UNSAFE that are being moved to a restrictive ACL, since the description says the window is exploitable during that transition.3.8.8 or 3.9.7; versions up to and including 3.9.6 are affected.Incorrect authorization due to a time-of-check to time-of-use (TOCTOU) race condition in the setACL request handling of Apache ZooKeeper.
When a node's ACL is changed via setACL, the pending change is not published to the server's outstanding change record for that node. Any request that is prepared (and authorized) after the setACL is submitted but before it commits is therefore checked against the previous, pre-revocation ACL, yet is applied to the data tree after the ACL change has taken effect. A client that currently holds a permission can use this window to perform operations requiring that permission through and after its revocation — for example, committing writes or deletes after losing write access, or re-granting itself full permissions, which persistently defeats the revocation. In deployments transitioning from the default OPEN_ACL_UNSAFE ACL to a restrictive ACL, any unauthenticated client can exploit this during the transition.
This issue affects Apache ZooKeeper up to and including 3.9.6. Users are recommended to upgrade to version 3.8.8 or 3.9.7, which fixes the issue.
This page as .md · .json · in your agent: get_signal("CVE-2026-100235") · 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/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.