Impact
A time‑of‑check to time‑of‑use race condition in the ACL handling of Apache ZooKeeper permits a client to prepare and authorize operations after an ACL change has been submitted but before it is committed. The pending change is not treated as part of the node's outstanding change record, so subsequent requests are checked against the previous ACL yet applied after the revocation. This flaw allows an attacker to write or delete data, or grant themselves persistent permissions, even after the ACL has been revoked, compromising the confidentiality, integrity, and availability of the data tree.
Affected Systems
All deployments of Apache ZooKeeper up to and including version 3.9.6 are vulnerable. This includes installations that transition from the default OPEN_ACL_UNSAFE ACL to a restrictive ACL in a production environment.
Risk and Exploitability
The vulnerability scores a CVSS score of 6, indicating moderate severity. The EPSS score is unavailable, and it is not listed in CISA’s KEV catalog. The likely attack vector involves a remote client that has temporary ACL permissions—particularly an unauthenticated client during a ACL transition—that exploits the short window between setACL submission and commit to perform unauthorized operations.
OpenCVE Enrichment