Skip to main content

Zcash Zebra EUVDEUVD-2026-119443

| CVE-2026-123558 HIGH
Improper Cleanup on Thrown Exception (CWE-460)
2026-11-08 VulnCheck GHSA-5hx4-99cr-cchc
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Act as a peer serving a syncing node
  2. Delivery
    Serve forged block with altered authorizing data
  3. Exploit
    Serve a second restart-triggering block
  4. Execution
    Commit fails and verifier rewind is cancelled
  5. Impact
    Verifier rejects honest blocks, checkpoint sync stalls until restart

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception cleanup procedures
Exploitation Conditions

Exploitable only against a node running zebrad 6.4.2 or earlier, or 7.0.0-rc.0, that is actively syncing through a checkpoint range at NU5 activation height or later (on Mainnet, heights 1,687,104 up to the final checkpoint) - i.e., a new node, a from-scratch re-sync, or a node restarting from a cached state below the final checkpoint. It requires checkpoint_sync enabled (the default) and the node downloading blocks from untrusted peers (the default on Mainnet and Testnet); no configuration change enables or disables the flaw, so default configurations are affected. The attacker needs no proof of work and no keys but must be asked for two specific blocks while a checkpoint range is pending, which a peer serving part of a full sync's block requests is likely to be. Limiting factors: nodes already past the final checkpoint are NOT affected; impact is confined to stalling sync progress (recoverable by restart, but re-stallable); and syncing from a trusted cached state already past the final checkpoint avoids the exposure.

Impact

Signals align on a genuine but bounded availability-only threat. The input CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H, 8.7) and the vendor GHSA 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, 7.5) agree: network-reachable, low complexity, no privileges, no user interaction, with impact confined to availability (no confidentiality/integrity effect). The vuln.today decision label is 'this_week' rather than act_now/emergency. There is no CISA KEV listing and no EPSS score in the supplied data, so there is no evidence of active or widespread exploitation - treat exploitation probability as unquantified rather than low. A key contrast: raw CVSS reads 'high/critical,' but the vendor advisory explicitly scopes the impact as a recoverable sync stall - no crash, no consensus divergence, no on-disk corruption, no effect on funds, and RPC/peer connections keep working; a restart restores progress (though the attacker can re-stall in a later range). This is therefore a real priority for operators performing initial sync or re-sync of a Zebra node below the final checkpoint, but it is not a loss-of-funds or remote-code-execution class issue. Note the input CWE (CWE-460, Improper Cleanup on Thrown Exception) differs from the vendor's CWE-755/CWE-362; the vendor classification better matches the described cancelled-future/exceptional-condition mechanism.

Exploit ScenarioDerived

A single malicious peer that a syncing Zebra node is downloading blocks from serves a forged block body - a genuine block's header and hash but altered authorizing data - together with a second block that makes the sync round fail. The checkpoint verifier advances past the forged block before the state commit rejects it, but the rewind that should realign the verifier is cancelled with the failed round, so the node then rejects honest blocks and makes no further sync progress until an operator restarts it. The reporter built an end-to-end proof of concept through the P2P interface, but no public exploit code is referenced in the available data.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Nov 08, 2026

Checkpoint sync in Zcash Foundation's Zebra node (zebrad before 7.0.0, including 6.4.2 and 7.0.0-rc.0 and the official Docker images) can be stalled indefinitely by a single unauthenticated remote peer, halting initial sync progress until an operator restarts the process. The peer serves a forged block that keeps a genuine header and hash but carries altered authorizing data, plus a second block that makes the sync round fail, so the verifier's rewind to the state tip is discarded with the cancelled future and honest blocks are afterwards rejected as already verified; the peer can repeat the attack after each restart. Impact is availability only - no crash, consensus divergence, on-disk state corruption or effect on funds - nodes already past the final checkpoint are not affected, no exploitation in the wild is reported, and the upstream advisory documents a reporter-supplied end-to-end proof of concept exercised through the P2P interface.

RemediationAI

Upgrade to zebrad 7.0.0 (https://github.com/ZcashFoundation/zebra/releases/tag/v7.0.0), which makes the commit task own recovery by reading the state tip and sending the reset itself, adds an epoch so only the first failure in an epoch rewinds the verifier, and re-queues the children of a failed block so the honest range re-verifies; regression tests are commit_failure_resets_progress_after_dropped_future and commit_failure_requeues_children_of_invalid_block. Per the vendor advisory there is no 6.4.x patch release and no configuration-level workaround, so operators on 6.4.x must upgrade. Restarting zebrad rebuilds the verifier from the state tip and lets sync resume, but the node can be stalled again in a later range; indeed a stall is identifiable in logs as 'committing a block to the finalized state failed, resetting state queue' with InvalidChainHistoryBlockTxAuthCommitment, followed by a current_height that stops advancing while sync rounds repeat. Syncing from a trusted cached state already past the final checkpoint avoids the exposure entirely. Because the same 7.0.0 release also fixes the related finalized sent-hash stall (GHSA-9hq5-pfgc-cx5h, whose recovery depends on this fix) and the scoring of rewritten coinbase heights (GHSA-g95h-hw6g-pvgv), upgrading covers those adjacent issues as well; full technical detail and credit are in GHSA-2w9f-9wx8-f5c8.

Affected VersionsENISA

zebra 0 <7.0.0

Affected Packages

euvd zebra fix: 7.0.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Zebra's checkpoint verifier matches candidate blocks against a hard-coded checkpoint list by block hash, and under ZIP 244 (Transaction Identifier Non-Malleability) authorizing data such as the coinbase scriptSig is excluded from v5 transaction IDs, so a body with altered authorizing data preserves its merkle root and therefore its block hash; the authorizing data commitment is only validated later, when zebra-state commits the block (InvalidChainHistoryBlockTxAuthCommitment). The root cause class is CWE-460 (improper cleanup on a thrown exception), with the upstream advisory also mapping CWE-755 and CWE-362: when a checkpoint range completes, process_checkpoint_range advances the verifier's progress before the state has committed the range, and the rewind to the state tip on commit failure is sent from the future that awaits the spawned commit task. A second restart-worthy block - confirmed triggers are a child with BadMerkleRoot at the final checkpoint, or a block from a later range whose coinbase height is rewritten into the current range and later rejected as UnexpectedSideChain (which carries a misbehavior score of 0 and is neither a duplicate nor an authorizing-data mismatch) - causes the syncer to call downloads.cancel_all(), dropping the in-flight verify futures through their cancellation branch; the commit task survives and fails, but nothing rewinds the verifier, which then rejects honest re-delivered blocks as AlreadyVerified (or Finished at the final checkpoint). The syncer's default in-flight window of about 1,000 blocks spans several 400-block checkpoint ranges, which is what makes the cross-range trigger practical. The 7.0.0 fix moves recovery into the commit task itself, adds an epoch so only the first failure in an epoch rewinds, and re-queues the children of a failed block; an earlier mitigation (PR #11385, shipped in 6.4.0) correctly limited the rewind to commit failures but left it inside the cancellable future, and the 6.4.0 fix for GHSA-3c94-hf7p-g5mf does not help because the future carrying that error has already been dropped.

Know when Zebra gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.5 HIGH

Remote unauthenticated malicious peer with no user interaction stalls sync (availability only); low complexity as the triggering block exchange occurs normally during a full sync; no confidentiality or integrity impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Nov 08, 2026 - 03:01 EUVD
CVE Published
Nov 08, 2026 - 01:37 cve.org
HIGH 8.7

DescriptionCVE.org

Zebra zebrad before 7.0.0 contains a denial of service vulnerability that allows a malicious peer to stall checkpoint sync by cancelling the verifier rewind after a failed commit. Attackers can serve a forged block with altered authorizing data plus a restart-triggering block, leaving the verifier rejecting honest blocks until restart.

Technical POC Analysis

Bug class: improper handling of exceptional conditions (CWE-755), with a concurrency/synchronization component (CWE-362).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

A high-severity availability flaw in the Zcash Foundation's Zebra node software (zebrad) enables any unauthenticated network peer to indefinitely stall initial blockchain synchronization, requiring manual operator intervention to restart. Organizations running Zebra nodes still in initial sync-including those using affected Docker images-face operational disruption and delayed readiness, though no funds, consensus integrity, or existing node state are at risk.

Business Impact: Medium
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include restricting P2P connectivity to trusted peers, monitoring sync progress with automated restart alerts, and deferring new node deployments until a fix is available.

Threat Intelligence Overview

EPSS Score
0.3%
Top 72% exploitable
Prevalence
Low
alternative Zcash full-node implementation; niche cryptocurrency node software
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
Medium
Technical Impact
Partial

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy