Besu 26.7.1 naprawia luki bezpieczeństwa

ETH
klient EthereumlukabezpieczeństwoCertiKBesu
1 godzinę temuŹródło: crypto.news
Besu 26.7.1 naprawia luki bezpieczeństwa

Besu ujawnia pięć błędów znalezionych przez CertiK po ich załataniu w wersji 26.7.1, wydanej 27 lipca.

Podsumowanie

  • Besu naprawił pięć podatności zgłoszonych przez CertiK w wersji 26.7.1 przed opublikowaniem pełnych porad technicznych.
  • CertiK znalazł ryzyka wyczerpania zasobów w interfejsach sieciowych, RPC, WebSocket i konsensusu podczas niezależnych badań bezpieczeństwa.
  • Skoordynowane ujawnienie dało operatorom Besu czas na aktualizację przed publicznym udostępnieniem szczegółowych informacji o podatnościach.

Besu opublikował szczegółowe porady 14 sierpnia dotyczące pięciu podatności bezpieczeństwa znalezionych przez CertiK i naprawionych w wersji 26.7.1, wydanej 27 lipca.

Problemy dotyczyły klienta Ethereum opartego na Javie w interfejsach peer-to-peer, RPC, WebSocket i konsensusu. W dotkniętych konfiguracjach mogły wyczerpać pamięć lub pojemność wątków i zakłócić dostępność węzła lub przetwarzanie konsensusu. CertiK znalazł błędy poprzez samodzielne testy na prywatnej, wielowęzłowej sieci Besu i zgłosił je prywatnie zespołowi projektowemu.

Besu 26.7.1 wydany przed szczegółami technicznymi

Besu najpierw wydał wersję 26.7.1 27 lipca jako aktualizację bezpieczeństwa i wezwał użytkowników do aktualizacji. Wydanie rozwiązało wszystkie pięć ustaleń CertiK oraz oddzielne problemy bezpieczeństwa. Strona wydania Besu na GitHubie identyfikuje 26.7.1 jako aktualizację skoncentrowaną na bezpieczeństwie i przypisuje CertiK oraz EF Security odpowiedzialne ujawnienie. Notatki wydania wprowadziły również limity dotyczące filtrów JSON-RPC i subskrypcji WebSocket.

Szczegóły techniczne stały się publiczne 14 sierpnia, kiedy Besu opublikował cztery porady obejmujące pięć ustaleń CertiK. Każda porada identyfikowała wersję 26.7.1 jako wydanie z poprawkami. Czas oznaczał, że operatorzy mieli dostęp do poprawki przed publicznym ujawnieniem szczegółowych informacji o słabościach. Ta skoordynowana sekwencja dała użytkownikom czas na aktualizację, jednocześnie zmniejszając niepotrzebne narażenie na szczegóły przed udostępnieniem remediacji.

Skoordynowane ujawnienie i niezależne testy

CertiK zgłosił wszystkie pięć ustaleń bezpośrednio zespołowi Besu. Naukowcy dostarczyli również odtwarzalne harnessy testowe proof-of-concept, które Besu mógł wykorzystać do zbadania zachowania. Oba zespoły współpracowały poufnie, podczas gdy Besu oceniał i naprawiał problemy. Udostępnili informacje techniczne publicznie dopiero po udostępnieniu wydania z poprawkami, zgodnie z procesem odpowiedzialnego ujawniania opisanym w materiale źródłowym.

CertiK zidentyfikował podatności bezpieczeństwa Besu podczas samodzielnych badań z wykorzystaniem metodologii testów adversarialnych Chain Scan. Praca wykorzystała prywatną, wielowęzłową sieć testową Besu. Naukowcy wprowadzili kontrolowane błędy w interfejsach peer-to-peer, HTTP RPC, WebSocket RPC i konsensusu. Wykorzystali te testy do zbadania ryzyka dostępności i wyczerpania zasobów w kontrolowanych warunkach, a nie poprzez zaangażowanie klienta.

Podatności bezpieczeństwa Besu zwiększyły ryzyko zasobów

Badania nie miały charakteru komercyjnego. CertiK ocenił pięć ustaleń od Minor do Major pod względem dotkliwości. Dotknięte obszary obejmowały przetwarzanie ogłoszeń bloków, buforowanie propozycji konsensusu o przyszłej wysokości, limity subskrypcji WebSocket oraz tworzenie filtrów JSON-RPC bez skutecznych ograniczeń. Obszary te dotyczą sposobu, w jaki węzeł obsługuje komunikaty sieciowe, subskrypcje, żądania zdalne i dane związane z konsensusem.

W dotkniętych konfiguracjach słabości mogły zużywać pamięć węzła lub dostępne wątki. To ciśnienie zasobów mogło zakłócić dostępność węzła lub przetwarzanie konsensusu. Dwie remediacje widoczne w wydaniu 26.7.1 dodały limity dla aktywnych filtrów JSON-RPC i subskrypcji WebSocket, zamykając ścieżki nieograniczonego wzrostu zasobów. Besu wezwał operatorów do przejścia na wersję z poprawkami, gdy wydał aktualizację.

Porady dodają publiczny zapis remediacji

Publikacja porad przez Besu stworzyła publiczny zapis pięciu ustaleń i ich remediacji. Notatki wydania projektu potwierdziły również CertiK i EF Security za ich odpowiedzialne ujawnienia. Besu jest open-source'owym klientem Ethereum napisanym w Javie i licencjonowanym na Apache 2.0, zgodnie z Linux Foundation Decentralized Trust. Projekt wspiera przypadki użycia sieci publicznych i prywatnych.

Besu służy jako klient wykonawczy w sieci głównej Ethereum i sieciach testowych, a także wspiera prywatne sieci przedsiębiorstw. Zapewnia interfejs wiersza poleceń, API JSON-RPC oraz API wtyczek do operacji na węźle i rozszerzeń. CertiK, założona w 2017 roku przez profesorów z Uniwersytetu Yale i Uniwersytetu Columbia, twierdzi, że wykryła ponad 119 000 podatności i zabezpieczyła ponad 600 miliardów dolarów w aktywach cyfrowych w ponad 150 krajach i regionach.