Podatność w Apache ZooKeeper pozwala nieuwierzytelnionemu atakującemu na ominięcie mechanizmu autoryzacji SASL Quorum Peer i dołączenie do klastra jako pełnoprawny węzeł. Skutkuje to uzyskaniem pełnego dostępu do odczytu i zapisu drzewa danych klastra.
▸ Pokaż oryginał (EN)
Authorization Bypass Through User-Controlled Key vulnerability in Apache ZooKeeper. If SASL Quorum Peer authentication is enabled in ZooKeeper (quorum.auth.enableSasl=true), the authorization is done by verifying that the instance part in SASL authentication ID is listed in zoo.cfg server list. The instance part in SASL auth ID is optional and if it's missing, like 'eve@EXAMPLE.COM', the authorization check will be skipped. As a result an arbitrary endpoint could join the cluster and begin propagating counterfeit changes to the leader, essentially giving it complete read-write access to the data tree. Quorum Peer authentication is not enabled by default. Users are recommended to upgrade to version 3.9.1, 3.8.3, 3.7.2, which fixes the issue. Alternately ensure the ensemble election/quorum communication is protected by a firewall as this will mitigate the issue. See the documentation for more details on correct cluster administration.
Gdy włączone jest uwierzytelnianie SASL Quorum Peer (quorum.auth.enableSasl=true), ZooKeeper weryfikuje autoryzację na podstawie członu 'instance' w identyfikatorze SASL. Człon 'instance' jest jednak opcjonalny — jeśli zostanie pominięty w ID uwierzytelniającym (np. 'eve@EXAMPLE.COM' zamiast 'zookeeper/server1@EXAMPLE.COM'), kontrola autoryzacji jest całkowicie pomijana. Pozwala to dowolnemu endpointowi na dołączenie do klastra, propagowanie fałszywych zmian do lidera i uzyskanie pełnego dostępu do drzewa danych.
Atakujący bez żadnych uprawnień może dołączyć do klastra ZooKeeper, uzyskując pełny dostęp do odczytu i zapisu drzewa danych, a także propagować sfałszowane dane do pozostałych węzłów klastra.
Należy zaktualizować Apache ZooKeeper do wersji 3.9.1, 3.8.3 lub 3.7.2, które zawierają poprawkę. Jako obejście alternatywne można zabezpieczyć komunikację election/quorum klastra za pomocą firewall, co ogranicza możliwość exploitacji podatności.
Apache ZooKeeper z włączoną opcją quorum.auth.enableSasl=true — podatność dotyczy wersji wcześniejszych niż 3.9.1, 3.8.3 oraz 3.7.2. Uwaga: SASL Quorum Peer authentication nie jest domyślnie włączone.
Podatność jest aktywna wyłącznie gdy quorum.auth.enableSasl=true — konfiguracja domyślna nie jest podatna. Poprawka dostępna także dla Debian Linux (DSA-5544).
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:NApache Zookeeper
APPApache3.9.0< 3.7.23.8.0 – 3.8.3 (bez)Debian
OSDebian10.011.012.0
Powiązane podatności
GNU Inetutils telnetd: ominięcie uwierzytelnienia przez zmienną USER
Sudo: eskalacja uprawnień do root poprzez opcję --chroot (CVE-2025-32463)
RCE przez deserializację PHP w Roundcube Webmail (parametr _from)
Erlang/OTP SSH — nieuwierzytelniony RCE (CVSS 10.0)
Apple WebKit: out-of-bounds write umożliwiający ucieczkę z sandbox przeglądarki