CVE-2026-54496
ZEBRA is a Zcash node written entirely in Rust. Prior to zebrad 5.0.0, halo2_gadgets 0.5.0, orchard 0.14.0, zcash_primitives 0.28.0, and zcashd 6.20.0, the variable-base scalar multiplication gadget in halo2_gadgets/src/ecc/chip/mul/incomplete.rs used assign_advice() for the base point without a copy constraint tying it to the actual base, allowing a malicious prover to produce a valid proof for an Orchard Action with an under-constrained base point and bypass the diversified-address-integrity check that binds pk_d, g_d, ivk, the nullifier (nf), and the spend validating key (ak) to the note being spent. This issue is fixed in zebrad 5.0.0, halo2_gadgets 0.5.0, orchard 0.14.0, zcash_primitives 0.28.0, and zcashd 6.20.0.
Published:Jul 17, 2026
Last Modified:Jul 28, 2026
EPS:Jul 17, 2026
EPSS Score:0.0021
CVSS Score:9.3
Affected Products
Vendor
Product
Action
Vendor
Zcash
Product
Halo2 Gadgets
Zcash
Halo2 Gadgets
Vendor
Zcash
Product
Librustzcash
Zcash
Librustzcash
Vendor
Zcash
Product
Orchard
Zcash
Orchard
Vendor
Zcash
Product
Zcash
Zcash
Zcash
Vendor
Zcashfoundation
Product
Zebra
Zcashfoundation
Zebra
Exploits
No exploit reference
Common Weakness Enumeration
Common Attack Pattern Enumeration and Classification (CAPEC)
References
Common Vulnerability Scoring System
Attack Vector
Network
Adjacent
Local
Physical
Privileges Required
None
Low
High
User Interaction
None
Required
Scope
Unchanged
Changed
Confidentiality
None
Low
High
Integrity
None
Low
High
Availability
None
Low
High
