CVE-2026-52736 in Zebra
Sumário
de VulDB • 18/08/2026
ZEBRA é um nó Zcash escrito inteiramente em Rust. Antes da versão 4.5.0, um par P2P remoto não autenticado pode bloquear um nó Zebra ao realizar uma race condition entre um corpo de bloco inválido e o corpo canônico válido para a mesma hash do cabeçalho do bloco. O ZIP-244 permite que o atacante mutue os dados de autenticação scriptSig da coinbase, mantendo os identificadores da transação, a raiz merkle e a hash do cabeçalho do bloco; assim, o corpo envenenado falha na validação posterior dos compromissos (commitments), mas compartilha a hash canônica. Em zebra-state/src/service.rs, queue_and_commit_to_non_finalized_state registrou a hash em non_finalized_block_write_sent_hashes antes da conclusão da validação contextual e não a removeu quando a tarefa de gravação rejeitou o corpo. Quando o corpo honesto chegou posteriormente, a hash armazenada em cache causou um tratamento duplicado do KnownBlock::WriteChannel, suprimindo-o, deixando o nó travado uma altura atrás até que ocorra uma reinicialização ou reorganização. Este problema foi corrigido na versão 4.5.0.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.