{"id":"GHSA-452v-w3gx-72wg","summary":"Zebra has rk Identity Point Panic in Transaction Verification","details":"# rk Identity Point Panic in Transaction Verification\n\n## Summary\n\nOrchard transactions contain a `rk` field which is a randomized validating key and also an elliptic curve point. The Zcash specification allows the field to be the identity (a \"zero\" value), however, the `orchard` crate which is used to verify Orchard proofs would panic when fed a `rk` with the identity value. Thus an attacker could send a crafted transaction that would make a Zebra node crash.\n\n## Severity\n\n**Critical** - This is a Denial of Service Vulnerability that could allow an attacker to crash Zebra nodes.\n\n## Affected Versions\n\nAll Zebra versions prior to **version 4.3.1**.\n\n## Description\n\nThe vulnerability exists in the `circuits.rs` file of the `orchard` crate; it attempts to get the coordinates of the `rk` value and calls `unwrap()` on the results, which causes a panic if `rk` is the identity.\n\nZebra parses `rk` as a byte vector; it creates an Orchard \"bundle\" using the `orchard` crate and then calls the same crate to verify it, triggering the panic.\n\nAn attacker could exploit this by:\n1. Creating a transaction with a identity `rk`\n2. Submitting it to a Zebra node, making it crash\n\n## Impact\n\n**Denial of Service**\n\n* **Attack Vector:** Network.\n* **Effect:** Node crash.\n* **Scope:** Any impacted Zebra node.\n\n## Fixed Versions\n\nThis issue is fixed in **Zebra 4.3.1**. \n\nThe fix was agreed with `zcashd` developers (which has the same issue) to not allow the identity `rk` anymore and change the specification as such. Zebra now does this when parsing a transaction. This was deemed easier than fixing the issue in `orchard`, which would make the bug public before the nodes could be patched.\n\n## Mitigation\n\nUsers should upgrade to **Zebra 4.3.1** or later immediately. \n\nThere are no known workarounds for this issue. Immediate upgrade is the only way to ensure the node remains not vulnerable to denial of service.\n\n## Credits\n\nThanks to Alex “Scalar” Sol for finding and reporting the issue.","aliases":["CVE-2026-41584"],"modified":"2026-05-12T17:36:44.500407Z","published":"2026-04-18T01:14:57Z","database_specific":{"github_reviewed_at":"2026-04-18T01:14:57Z","nvd_published_at":"2026-05-08T15:16:41Z","cwe_ids":["CWE-617"],"severity":"CRITICAL","github_reviewed":true},"references":[{"type":"WEB","url":"https://github.com/ZcashFoundation/zebra/security/advisories/GHSA-452v-w3gx-72wg"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-41584"},{"type":"PACKAGE","url":"https://github.com/ZcashFoundation/zebra"}],"affected":[{"package":{"name":"zebrad","ecosystem":"crates.io","purl":"pkg:cargo/zebrad"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"4.3.1"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/04/GHSA-452v-w3gx-72wg/GHSA-452v-w3gx-72wg.json"}},{"package":{"name":"zebra-chain","ecosystem":"crates.io","purl":"pkg:cargo/zebra-chain"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"6.0.2"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/04/GHSA-452v-w3gx-72wg/GHSA-452v-w3gx-72wg.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"},{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:H"}]}