Executive brief
Nimiq core-rs-albatross is a Rust-based implementation of the Nimiq blockchain protocol. A vulnerability exists where a remote user can crash a blockchain node by sending specific network requests while the node is syncing or running without a history index. This results in a denial-of-service, potentially disrupting the node's ability to participate in the network or process transactions.
Technical details
A denial-of-service vulnerability exists in Nimiq core-rs-albatross due to an unchecked return value in the consensus request handlers. Specifically, the handlers for 'RequestTransactionsProof' and 'RequestTransactionReceiptsByAddress' call 'blockchain.history_store.history_index().unwrap()' directly. Because 'HistoryStoreProxy::history_index()' returns 'None' when a node is in the 'WithoutIndex' state (such as during syncing), this call triggers an 'Option::unwrap()' panic. A remote, unauthenticated peer can exploit this by sending these specific requests to a target node, causing the process to crash. The issue is fixed in version 1.3.0 by implementing guard clauses that return an error instead of panicking.
Affected products
- Nimiq core-rs-albatross < 1.3.0
Timeline
- 2026-03-27: patched: Fixed in commit 0e5c90a and PR #3667
- 2026-03-27: advisory: GitHub Security Advisory GHSA-xr78-2jhh-9wf9 published
- 2026-04-03: disclosed: CVE-2026-35468 published to NVD