CVE-2026-44500
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 30 - wyżej niż 30% wszystkich znanych CVE
Streszczenie
W wersjach Zebra przed zebrad 4.4.0, zebra-chain 7.0.0 i zebra-network 6.0.0 kilka ścieżek deserializacji przychodzących danych alokowało bufory według ogólnych limitów transportu lub rozmiaru bloku, zanim zastosowano ściślejsze limity protokołu lub konsensusu. Nieuwierzytelniony lub po uzgodnieniu połączenia peer mógł wymusić na węźle prealokację i parsowanie znacznie większej ilości danych niż przewiduje protokół, w wiadomościach nagłówków, rozwiązaniach equihash w nagłówkach bloków, wektorach wydatków Sapling w transakcjach V5/V4 oraz bajtach skryptu coinbase w blokach.
Ocena ryzyka
Atakujący może zdalnie wywołać nadmierne zużycie pamięci i zasobów węzła Zcash, prowadząc do odmowy usługi lub niestabilności sieci. Wpływa to na dostępność i integralność działania węzłów w organizacji.
Rekomendacja
Zaktualizuj zebrad do wersji 4.4.0, zebra-chain do 7.0.0 oraz zebra-network do 6.0.0. Zweryfikuj, czy wszystkie węzły w infrastrukturze korzystają z poprawionych wersji.
Inne podatności w Zebra
Zobacz wszystkie- CVE-2026-104435Wysokie
Zebra zebrad 4.4.0 i zebra-script 6.0.0 nie egzekwują reguły konsensusu ZIP-244, akceptując przezroczyste wejścia V5 podpisane z SIGHASH_SINGLE, które nie mają odpowiadającego wyjścia. Atakujący może rozgłaszać spreparowane transakcje V5 z większą liczbą wejść niż wyjść, które Zebra akceptuje, ale zcashd odrzuca, powodując rozdzielenie konsensusu sieci.
- CVE-2026-104434Średnie
ZcashFoundation Zebra zebra-rpc w wersjach przed 8.0.0 i zebrad przed 4.5.0 zawierają osiągalne asercje w handlerze RPC z_listunifiedreceivers, który wywołuje expect() przy parsowaniu odbiorcy Sapling, co kończy się niepowodzeniem dla Unified Addresses zawierających nieprawidłowe punkty Jubjub. Uwierzytelnieni klienci RPC mogą przesłać taki adres, aby przerwać proces zebrad, wielokrotnie utrzymując węzeł offline.
- CVE-2026-104431Wysokie
Zebra w wersji przed 6.0.0 zawiera podatność typu denial of service, która pozwala nieuwierzytelnionym peеrом blokować wątki Tokio poprzez przesyłanie transakcji do mempoola wymagających kosztownej synchronicznej weryfikacji skryptów. Atakujący może wysyłać niestandardowe transakcje P2SH o wysokiej liczbie sigop, które docierają do CachedFfiTransaction::is_valid() przed sprawdzeniami standardowości, nasycając bufor weryfikatora i czyniąc węzeł nieodpowiadającym.
- CVE-2026-104430Wysokie
Zebra zebrad 4.5.0 i zebra-script 7.0.0 liczą operacje podpisu skryptu redeem P2SH w trybie legacy zamiast dokładnego trybu P2SH zcashd, przeliczając CHECKMULTISIG poprzedzony OP_1 do OP_16 jako 20 sigopów i powodując rozbieżność konsensusu. Zdalni atakujący mogą rozgłaszać wydatki P2SH używające skryptów redeem multisig o niskim progu, tak że blok akceptowany przez zcashd przekracza zawyżony licznik MAX_BLOCK_SIGOPS Zebry, powodując odrzucenie go przez węzły Zebra i zatrzymanie ich poza łańcuchem.
- CVE-2026-104429Średnie
Zebra (zebrad) w wersjach od 5.0.0 do przed 6.0.0-rc.0 nie stosuje limitu przyjęć mempool na peer do transakcji otrzymywanych jako bezpośrednie wiadomości P2P tx, ponieważ są one kolejkowane bez zapisania wysyłającego peera jako źródła. Zdalny przychodzący peer może wysłać wiele unikalnych transakcji, zajmując nieproporcjonalną część miejsc przyjęć mempool, wypierając uczciwe przekaźniki transakcji innych peerów.
- CVE-2026-104426Średnie
Zebra przed wersją 6.1.0 zawiera podatność nieefektywnej złożoności algorytmicznej w funkcji remaining_transaction_value, która klonuje całą mapę wydanych UTXO na poziomie bloku dla każdej transakcji podczas weryfikacji kontekstowej. Atakujący mogą wydobyć lub zasiać mempool około 26 000 minimalnych transakcji z jednym wejściem w jednym bloku, zatrzymując każdy walidujący węzeł na ponad 52 sekundy.
- CVE-2026-104425Średnie
ZcashFoundation Zebra przed wersją 6.1.0 zawiera podatność wyczerpania zasobów, która pozwala nieuwierzytelnionym peerom na degradację przetwarzania bloków poprzez wysyłanie transakcji z nieprawidłowymi dowodami Orchard bez otrzymania punktów kar. Atakujący mogą wielokrotnie wysyłać nieprawidłowe dowody do wspólnego weryfikatora halo2, zmuszając uczciwe dowody bloków do wolnej ścieżki indywidualnej weryfikacji i spowalniając przetwarzanie bloków około siedmiokrotnie.
- CVE-2026-104423Wysokie
Zebra (zebrad) w wersji przed 6.2.1 zawiera asymetryczną podatność zużycia zasobów, która pozwala nieuwierzytelnionym peеrом blokować weryfikację bloków poprzez przesyłanie transakcji V6 do mempoola z nieprawidłowymi dowodami Halo2. Atakujący może zalać współdzieloną kolejkę weryfikacji Halo2 bez priorytetu transakcjami o zerowej opłacie z wypełnionymi zerami dowodami Orchard i Ironwood, powodując opóźnienie węzłów względem końca łańcucha.
- CVE-2026-104421Średnie
Zebra przed wersją 6.2.1 zawiera podatność niepełnego czyszczenia, która pozwala nieuwierzytelnionym peerom na blokowanie pobierania prawidłowych bloków poprzez pozostawianie odrzuconych hashów w SentHashes. Atakujący mogą wysłać kontekstowo nieprawidłowy blok, który ma ten sam hash nagłówka co uczciwy blok, powodując, że Request::KnownBlock pomija uczciwy blok i utrzymuje węzły za szczytem.
- CVE-2026-52735Krytyczne
ZEBRA, węzeł Zcash napisany w Rust, przed wersją 4.5.0 może zaakceptować blok, który zcashd odrzuca z powodu niedoszacowania licznika operacji podpisu P2SH dla skryptów zawierających wyłączony opcode. Atakujący może wykorzystać to do spowodowania rozłamu łańcucha, co wpływa na integralność i dostępność sieci.
Oryginalny opis (angielski, źródło NVD)
ZEBRA is a Zcash node written entirely in Rust. Prior to zebrad version 4.4.0, prior to zebra-chain version 7.0.0, and prior to zebra-network version 6.0.0, several inbound deserialization paths in Zebra allocated buffers sized against generic transport or block-size ceilings before the tighter protocol or consensus limits were enforced. An unauthenticated or post-handshake peer could therefore force the node to preallocate and parse for orders of magnitude more data than the protocol intended, across headers messages, equihash solutions in block headers, Sapling spend vectors in V5/V4 transactions, and coinbase script bytes in blocks. This issue has been patched in zebrad version 4.4.0, zebra-chain version 7.0.0, and zebra-network version 6.0.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

