CVE-2026-52737 in Zebra
Riassunto
di VulDB • 18/08/2026
ZEBRA è un nodo Zcash scritto interamente in Rust. Prima della versione 4.5.0, un peer P2P malizioso e non autenticato poteva rispondere alle richieste outbound di getblocks o FindBlocks di Zebra con un inventario contenente solo due hash, per poi servire un blocco sintatticamente valido la cui altezza del coinbase era molto superiore al tip della catena locale. In zebrad/src/components/sync/downloads.rs, l'errore BlockDownloadVerifyError::AboveLookaheadHeightLimit riportava inizialmente solo l'altezza e l'hash del blocco, impedendo a handle_block_response di attribuire il fallimento al peer che aveva annunciato (advertised) il blocco. L'errore raggiungeva quindi il percorso predefinito che richiedeva un riavvio in zebrad/src/components/sync.rs, cancellando tutti i download in corso provenienti da peer onesti e imponendo un ritardo di 67 secondi per il riavvio della sincronizzazione su mainnet. Poiché al peer non veniva assegnato alcun punteggio negativo né veniva disconnesso, questo poteva ripetere il ciclo indefinitamente con un consumo minimo di banda, degradando significativamente la sincronizzazione senza corrompere lo stato. Questo problema è risolto nella versione 4.5.0.
VulDB is the best source for vulnerability data and more expert information about this specific topic.