天下漏洞,尽知其名
MEDIUM

CVE-2026-104434 Zebra z_listunifiedreceivers 断言崩溃漏洞

影响认证 RPC 客户端可触发断言使节点进程中止,导致节点离线

AI 研判

Zebra 是 Zcash 基金会的 Zcash 节点实现,其 z_listunifiedreceivers RPC 处理程序在解析 Sapling 接收者时对结果调用 expect()。当传入携带无效 Jubjub 点的 Unified Address 时,该断言失败,导致 zebrad 进程中止。攻击者可通过重复请求持续使节点离线。

影响范围

ZcashFoundation Zebra

zebra-rpc 8.0.0 之前版本、zebrad 4.5.0 之前版本受影响,具体修复版本以官方公告为准。

漏洞详情

漏洞类型为可达断言(reachable assertion)导致的拒绝服务。成因是 z_listunifiedreceivers RPC 处理程序在解析 Sapling 接收者时使用 expect() 处理可能失败的结果,而携带无效 Jubjub 点的 Unified Address 会使解析失败并触发 panic。已认证的 RPC 客户端可提交此类地址,使 zebrad 进程中止。

利用条件与风险

利用前提是攻击者拥有 RPC 访问权限(需认证)。成功利用可反复使节点崩溃离线,影响节点可用性,但不直接导致资金损失或代码执行。

修复建议

升级 zebra-rpc 至 8.0.0 或更高版本、zebrad 至 4.5.0 或更高版本;临时缓解措施为限制 RPC 访问权限并仅向可信客户端开放。

原始情报

ZcashFoundation Zebra zebra-rpc before 8.0.0 and zebrad before 4.5.0 contain a reachable assertion in the z_listunifiedreceivers RPC handler, which calls expect() on Sapling receiver parsing that fails for Unified Addresses carrying invalid Jubjub points. Authenticated RPC clients can submit such an address to abort the zebrad process, repeatably keeping the node offline.