Skip to content
OpenAdvisories
Medium · 5.9 CVE-2026-46539 EUVD-2026-35880GHSA-799f-29jm-gr6c

nimiq-primitives: BlockInclusionProof interlink issue when hops are empty

Published Jun 9, 2026 · Updated Jun 10, 2026 · Assigned by GitHub_M

Description

Nimiq is a Rust implementation of the Nimiq Proof-of-Stake protocol based on the Albatross consensus algorithm. Prior to version 1.4.0, a logic flaw in BlockInclusionProof::is_block_proven causes the function to return true without performing any cryptographic verification when get_interlink_hops yields an empty hop list. This occurs when the target block is at the election block position immediately preceding the election head's epoch. An attacker providing transaction inclusion proofs can forge a MacroBlock header for that epoch position and have it accepted as "proven" without any hash or signature verification. This issue has been patched in version 1.4.0.

Affected products

VendorProductAffectedFixed
nimiq core-rs-albatross < 1.4.0 —

Affected packages

EcosystemPackageAffectedFixedRecord
crates.io nimiq-primitives <= 0.2.0 — GHSA-799f-29jm-gr6c

References