High severity · published Aug 18, 2026
CVE-2026-52736
ZEBRA: Block suppression via NU5 same-header body poisoning of sent-hash cache
8.7
CVSS
0.6%
EPSS
No
On KEV
Description
ZEBRA is a Zcash node written entirely in Rust. Prior to 4.5.0, a remote unauthenticated P2P peer can stall a Zebra node by racing an invalid block body against the valid canonical body for the same block header hash. ZIP-244 permits the attacker to mutate coinbase scriptSig authentication data while retaining the transaction identifiers, merkle root, and block header hash, so the poisoned body fails later commitment validation but shares the canonical hash. In zebra-state/src/service.rs, queue_and_commit_to_non_finalized_state recorded the hash in non_finalized_block_write_sent_hashes before contextual validation completed and did not remove it when the write task rejected the body. When the honest body later arrived, the cached hash caused KnownBlock::WriteChannel duplicate handling to suppress it, leaving the node stuck one height behind until restart or reorganization. This issue is fixed in version 4.5.0.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.6% · higher than 49% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
ZE
zebra · ZcashFoundation
< 4.5.0 · source: vendor
Affected product
ZE
zebra
ZcashFoundation
More from zebra
9.3
CVE-2026-52735
ZEBRA: Consensus divergence via P2SH sigop undercount in pure-Rust disabled-opcode parser
9.3
CVE-2026-54496
Missing copy constraint in halo2_gadgets variable-base scalar multiplication allows under-constrained base, breaking Orchard Action circuit soundness
9.1
CVE-2026-44497
ZEBRA: Consensus Divergence in Transparent Sighash Hash-Type Handling due to Stale Buffer
9.1
CVE-2026-41583
ZEBRA: Consensus Divergence in Transparent Sighash Hash-Type Handling
8.7
CVE-2026-44499
ZEBRA: Permanent Block Discovery Halt via Gossip Queue Saturation and Syncer Poisoning