{"answers":{"affected":"4 open source packages ship an affected version, including zebra-state and zebrad.","exploited":"There is no known exploitation of CVE-2026-52736 in the wild and no public exploit code.","fix":"Upgrade zebra-state to 7.0.0 or later.","what":"CVE-2026-52736 is a high-severity vulnerability in ZcashFoundation zebra, published on 18 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-52736 and fix it if it is affected.\n\nWhat it is: CVE-2026-52736 is a high-severity vulnerability in ZcashFoundation zebra, published on 18 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-52736 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- zebra-state (crates.io): affected all versions; fixed in 7.0.0\n- zebra-state (crates.io): affected all versions; fixed in 7.0.0\n- zebrad (crates.io): affected all versions; fixed in 4.5.0\n- zebrad (crates.io): affected all versions; fixed in 4.5.0\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-52736/ (Markdown: https://insights.sbomify.com/CVE-2026-52736/index.md)","id":"CVE-2026-52736","markdown":"https://insights.sbomify.com/CVE-2026-52736/index.md","name":"CVE-2026-52736","record":{"aliases":["GHSA-4m69-67m6-prqp"],"analysis":{"component_type":"server_software","fix_type":"upgrade","impacts":["denial_of_service"],"network_reachable":"yes","non_default_config":false,"product_category":"Zcash node","requires_auth":"none","summary":"A remote attacker can stall a Zcash node by racing invalid block bodies against valid ones, causing the node to reject honest blocks and halt synchronization.","user_interaction":"not_required","vuln_class":"race_condition"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[],"cvss":{"score":8.7,"severity":"high","source":"cna","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N","version":"4.0"},"cwes":[{"id":"CWE-459","name":"Incomplete Cleanup"}],"description":"ZEBRA is a Zcash node written entirely in Rust. Prior to 4.5.0, a remote unauthenticated P2P peer can stall a Zebra node by racing an invalid block body against the valid canonical body for the same block header hash. ZIP-244 permits the attacker to mutate coinbase scriptSig authentication data while retaining the transaction identifiers, merkle root, and block header hash, so the poisoned body fails later commitment validation but shares the canonical hash. In zebra-state/src/service.rs, queue_and_commit_to_non_finalized_state recorded the hash in non_finalized_block_write_sent_hashes before contextual validation completed and did not remove it when the write task rejected the body. When the honest body later arrived, the cached hash caused KnownBlock::WriteChannel duplicate handling to suppress it, leaving the node stuck one height behind until restart or reorganization. This issue is fixed in version 4.5.0.","ecosystems":["crates.io"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"ZEBRA: Block suppression via NU5 same-header body poisoning of sent-hash cache","id":"CVE-2026-52736","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"crates.io","product":null,"products":[],"type":"race_condition","year":"2026"},"n_packages":4,"n_references":3,"next":{"headline":"ZEBRA: Sync restart poisoning from single unauthenticated peer via above-lookahead block","id":"CVE-2026-52737"},"packages":[{"ecosystem":"crates.io","fixed":["7.0.0"],"introduced":["0"],"last_affected":[],"package":"zebra-state","purl":null,"source":"GHSA-4m69-67m6-prqp"},{"ecosystem":"crates.io","fixed":["7.0.0"],"introduced":["0"],"last_affected":[],"package":"zebra-state","purl":"pkg:cargo/zebra-state","source":"GHSA-4m69-67m6-prqp"},{"ecosystem":"crates.io","fixed":["4.5.0"],"introduced":["0"],"last_affected":[],"package":"zebrad","purl":null,"source":"GHSA-4m69-67m6-prqp"},{"ecosystem":"crates.io","fixed":["4.5.0"],"introduced":["0"],"last_affected":[],"package":"zebrad","purl":"pkg:cargo/zebrad","source":"GHSA-4m69-67m6-prqp"}],"prev":{"headline":"ZEBRA: Consensus divergence via P2SH sigop undercount in pure-Rust disabled-opcode parser","id":"CVE-2026-52735"},"products":["zebra"],"published":"2026-08-18","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"yes","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-08-18","vendors":["ZcashFoundation"]},"summary":"A remote attacker can stall a Zcash node by racing invalid block bodies against valid ones, causing the node to reject honest blocks and halt synchronization.","url":"https://insights.sbomify.com/CVE-2026-52736/"}