CVE-2026-52732
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 30 - wyżej niż 30% wszystkich znanych CVE
Streszczenie
ZEBRA to węzeł Zcash napisany w języku Rust. Przed wersją 4.5.0 jeden nieuwierzytelniony peer P2P może zmonopolizować wszystkie 25 slotów MAX_INBOUND_CONCURRENCY w potoku pobierania i weryfikacji mempoola. Atakujący może reklamować fałszywe identyfikatory transakcji i blokować sloty, co prowadzi do odrzucania uczciwych transakcji i lokalnych żądań sendrawtransaction.
Ocena ryzyka
Ryzyko polega na zakłóceniu działania mempoola, co może uniemożliwić przetwarzanie legalnych transakcji i wpłynąć na działanie węzła.
Rekomendacja
Zaleca się aktualizację ZEBRA do wersji 4.5.0 lub nowszej, która zawiera poprawkę uwzględniającą rozliczenia per-peer i odpowiednie obsługiwanie przeciążenia.
Oryginalny opis (angielski, źródło NVD)
ZEBRA is a Zcash node written entirely in Rust. Prior to 4.5.0, one unauthenticated P2P peer can monopolize all 25 MAX_INBOUND_CONCURRENCY slots in Zebra's inbound mempool download and verification pipeline. In zebrad/src/components/mempool/downloads.rs, the bounded queue was shared globally without per-peer accounting, while peer identity was not carried through Gossip and FullQueue responses were mapped to Response::Nil instead of reaching overload disconnection handling. An attacker can advertise fake transaction identifiers and remain silent so each task holds a slot until TRANSACTION_DOWNLOAD_TIMEOUT, then periodically refill the queue as slots expire. While saturated, honest peer transactions and local sendrawtransaction requests are rejected with MempoolError::FullQueue, although block validation and synchronization continue. This issue is fixed in version 4.5.0.

