ZEBRA is a Zcash node written entirely in Rust. Prior to zebrad version 4.3.0 and zebra-network version 5.0.1, when deserializing addr or addrv2 messages, which contain vectors of addresses, Zebra would fully deserialize them up to a maximum length (over 233,000) that was derived from the 2 MiB message size limit. This is much larger than the actual limit of 1,000 messages from the specification. Zebra would eventually check that limit but, at that point, the memory for the larger vector was already allocated. An attacker could cause out-of-memory aborts in Zebra by sending multiple such messages over different connections. This vulnerability is fixed in zebrad version 4.3.0 and zebra-network version 5.0.1.
Fix
Patch, vendor advisory and mitigation references on NVD 2
- https://github.com/ZcashFoundation/zebra/security/advisories/GHSA-xr93-pcq3-pxf8 Vendor Advisory
- https://github.com/ZcashFoundation/zebra/security/advisories/GHSA-xr93-pcq3-pxf8 Vendor Advisory
Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.
Change history 1
- First seenCVSS 6.3 · zfndNVD modified 2026-10-26 21:10
Affected (CPE criteria) 2
cpe:2.3:a:zfnd:zebra-network:*:*:*:*:*:rust:*:*cpe:2.3:a:zfnd:zebrad:*:*:*:*:*:rust:*:*