Strona główna / Blog / PikiwiDB: auth tylko na jednej ścieżce

Blog · analiza

PikiwiDB: requirepass jest włączone, ale wewnętrzny port replikacji omija całą kontrolę

PikiwiDB (Pika) 3.5.7 wystawia wewnętrzny protobuf replication server na porcie wyliczanym jako port klienta + 2000. requirepass miało chronić replikację, ale walidacja występuje tylko w MetaSync; dispatcher obsługuje inne typy wiadomości bez wymagania wcześniejszego uwierzytelnienia. W rezultacie unauthenticated remote attacker może bezpośrednio wysyłać TrySync, DBSync, BinlogSync i RemoveSlaveNode, pobierać full-sync snapshot, live write stream oraz usuwać replica nodes — nawet gdy requirepass jest skonfigurowane.

CVE-2026-84700: unauthenticated replication access przez wewnętrzny protobuf port.
Warunek: port replikacji (klient + 2000) osiągalny; requirepass chroni tylko MetaSync.
Skutek: full-sync snapshot, live write stream, usuwanie replica nodes.

Dlaczego to ważne dla VM?

To świetny przykład „security control exists, but only on one protocol path”. Administrator może mieć dowód requirepass = enabled i uznać bazę za zabezpieczoną, podczas gdy drugi port ma własny dispatcher i inną logikę kontroli. Finding powinien ustalać wersję, ekspozycję replication portu, firewall rules i to, czy requirepass było podstawą wcześniejszego risk acceptance.

Kontrola na jednej ścieżce to nie kontrola na wszystkich

Jeśli wcześniejsza decyzja brzmiała „baza jest zabezpieczona, bo requirepass", nowe CVE podważa jej założenie. To wzorzec, który wraca w wielu produktach: kontrola sprawdzana na głównej ścieżce (API klienta) i pomijana na alternatywnej (replikacja, management, debug). Dojrzały VM powinien umieć odnaleźć wyjątki oparte na kontroli, której zakres okazał się węższy niż zakładano.

Co powinien zrobić Vulnerability Engineer?

  1. Ustal wersję i to, czy port replikacji (klient + 2000) jest osiągalny spoza hosta.
  2. Ogranicz dostęp sieciowy do portu replikacji (firewall/segmentacja) jako natychmiastowy control.
  3. Zweryfikuj, czy requirepass było podstawą wcześniejszego risk acceptance — jeśli tak, rewaliduj.
  4. Zastosuj vendor-fixed release, gdy dostępny; potwierdź, że replikacja wymaga auth.

Wniosek

CVE-2026-84700 pokazuje, że obecność kontroli uwierzytelnienia nie oznacza, że obejmuje ona wszystkie porty i protokoły tego samego produktu. VE musi modelować alternate protocol paths — pytanie brzmi nie „czy mamy requirepass?", tylko: czy każda ścieżka do danych naprawdę przez nie przechodzi?

Powiązane na blogu

Źródła

Nota redakcyjna: stan informacji 3 września 2026. CVE-2026-84700 dotyczy PikiwiDB/Pika 3.5.7; requirepass jest walidowane tylko w MetaSync, a dispatcher obsługuje pozostałe wiadomości replikacji bez auth. Artykuł koncentruje się na alternate protocol paths, nie na eksploatacji.

Zapamiętaj jedno

Obecność kontroli uwierzytelnienia nie oznacza, że obejmuje ona wszystkie porty i protokoły tego samego produktu. requirepass = enabled na porcie klienta nie chroni portu replikacji z własnym dispatcherem — VE musi modelować alternate protocol paths.