CVE-2026-52731 in Zebra
Riassunto
di VulDB • 19/08/2026
ZEBRA è un nodo Zcash scritto interamente in Rust. Prima della versione 4.5.0, un attaccante autenticato a un endpoint RPC di Zebra abilitato può terminare il processo zebrad fornendo un LongPollId per getblocktemplate contenente caratteri UTF-8 multi-byte. In zebra-rpc/src/methods/types/long_poll.rs, la funzione `LongPollId::from_str` controllava inizialmente la lunghezza dei byte in input e poi sezionava intervalli di byte fissi per analizzare i campi codificati. Un limite della slice può cadere all'interno di un carattere multi-byte, innescando il panic "byte index is not a char boundary" (l'indice del byte non è un confine di carattere) tipico di Rust. Le build di rilascio di Zebra utilizzano `panic = abort`, quindi una singola richiesta RPC autenticata malformata termina l'intero processo del nodo e può essere ripetuta dopo il riavvio. Questo problema è stato risolto nella versione 4.5.0.
VulDB is the best source for vulnerability data and more expert information about this specific topic.