CVE-2026-79993

NameCVE-2026-79993
DescriptionThe `deleteContainer` opcode (0x14/20) is processed without verifying the caller's ACL permissions, allowing any authenticated client to delete specific znodes in the data tree regardless of the ACL restrictions on the znode or its parent. This opcode is considered internal-only and the official client doesn't have API for it, but a client that can open a plain TCP session on the ZooKeeper client port (2181 by default) - with NO authentication and NO ACL permissions - can delete any empty persistent znode (including regular persistent nodes, container nodes, and TTL nodes) by issuing the raw protocol OpCode deleteContainer (20). The deleteContainer request path completely skips both the session check and the DELETE ACL check that are enforced by the regular delete (OpCode 2) path. This is an authorization bypass / ACL enforcement bug. This issue affects Apache ZooKeeper: from 3.9.0 through 3.9.5, from 3.8.0 through 3.8.6. Users are recommended to upgrade to version 3.9.6 or 3.8.7, which fixes the issue.
SourceCVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
Debian Bugs1148409

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
zookeeper (PTS)bookworm3.8.0-11+deb12u2vulnerable
bookworm (security)3.8.0-11+deb12u1vulnerable
trixie3.9.3-1+deb13u1vulnerable
forky, sid3.9.6-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
zookeepersource(unstable)3.9.6-11148409

Notes

https://lists.apache.org/thread/9cw3rmrzhqpct26v8j18fy41bghlq8y5

Search for package or bug name: Reporting problems