PT-2026-48331 · Nimiq · Core-Rs-Albatross
Published
2026-06-09
·
Updated
2026-06-10
·
CVE-2026-46540
CVSS v3.1
6.5
Medium
| Vector | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L |
Nimiq is a Rust implementation of the Nimiq Proof-of-Stake protocol based on the Albatross consensus algorithm. Prior to version 1.4.0, when LightBlockchain::rebranch() adopts a fork chain whose tip is a macro block (checkpoint or election), it only updates self.head but fails to update self.macro head, self.election head, self.current validators, or store the election header in the chain store. This is in direct contrast with the full Blockchain::rebranch() at blockchain/src/blockchain/push.rs:504-518, which correctly updates all macro/election state when the new head is a macro block. After a rebranch to a macro block, the stale macro head causes subsequent macro blocks pushed via push() to be verified against the wrong predecessor via verify macro successor(&this.macro head). If the rebranch target was an election block, the stale current validators causes every subsequent block to fail verify validators(), completely stalling the light client's chain progression. This issue has been patched in version 1.4.0.
Fix
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Core-Rs-Albatross