Nimiq Proof Of Stake
Approved changes feed: RSS · Atom
cpe:2.3:a:nimiq:nimiq_proof-of-stake:*:*:*:*:*:rust:*:*
part: a version: * update: *
| Vendor | Nimiq (a6c6d398-2780-5e77-a82f-ca37478d870d) |
|---|---|
| Product | Nimiq Proof Of Stake (53ca2c6e-1f54-5179-b8d4-1fdee05784f4) |
| Edition | * |
| Language | * |
| Software edition | * |
| Target software | rust |
| Target hardware | * |
| Other | * |
| Notes | Imported from purl2cpe mapping |
PURL mappings
| PURL | Source | Last updated |
|---|---|---|
pkg:github/nimiq/core-rs-albatross |
purl2cpe | 2026-06-01 10:12:23.277590 |
Vulnerability references
| Identifier | cpeApplicability | Submitted | db.gcve.eu details | Rationale |
|---|---|---|---|---|
CVE:CVE-2026-40093 |
vulnerable | 2026-06-08 08:01:19.884630 |
nimiq-blockchain is missing a wall-clock upper bound on block timestamps
HIGH (8.1)
nimiq-blockchain provides persistent block storage for Nimiq's Rust implementation. In 1.3.0 and earlier, block timestamp validation enforces that timestamp >= parent.timestamp for non-skip blocks and timestamp == parent.timestamp + MIN_PRODUCER_TIMEOUT for skip blocks, but there is no visible upper bound check against the wall clock. A malicious block-producing validator can set block timestamps arbitrarily far in the future. This directly affects reward calculations via Policy::supply_at() and batch_delay() in blockchain/src/reward.rs, inflating the monetary supply beyond the intended emission schedule.
Published: 2026-04-09T20:29:46.026Z
Updated: 2026-04-13T15:38:14.634Z |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-35468 |
vulnerable | 2026-06-08 07:59:14.037174 |
nimiq/core-rs-albatross: Panic in history index request handlers when a full node runs without the history index
MEDIUM (5.3)
nimiq/core-rs-albatross is a Rust implementation of the Nimiq Proof-of-Stake protocol based on the Albatross consensus algorithm. Prior to version 1.3.0, two peer-facing consensus request handlers assume that the history index is always available and call blockchain.history_store.history_index().unwrap() directly. That assumption is false by construction. HistoryStoreProxy::history_index() explicitly returns None for the valid HistoryStoreProxy::WithoutIndex state. when a full node is syncing or otherwise running without the history index, a remote peer can send RequestTransactionsProof or RequestTransactionReceiptsByAddress and trigger an Option::unwrap() panic on the request path. This issue has been patched in version 1.3.0.
Published: 2026-04-03T22:10:06.156Z
Updated: 2026-04-06T17:22:04.161Z Reference links |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-34069 |
vulnerable | 2026-06-08 07:59:11.734858 |
nimiq-consensus panics via RequestMacroChain micro-block locator
MEDIUM (5.3)
nimiq/core-rs-albatross is a Rust implementation of the Nimiq Proof-of-Stake protocol based on the Albatross consensus algorithm. In versions 1.2.2 and below, an unauthenticated p2p peer can cause the RequestMacroChain message handler task to panic. Sending a RequestMacroChain message where the first locator hash on the victim’s main chain is a micro block hash (not a macro block hash) causes said panic. The RequestMacroChain::handle handler selects the locator based only on "is on main chain", then calls get_macro_blocks() and panics via .unwrap() when the selected hash is not a macro block (BlockchainError::BlockIsNotMacro). This issue has been fixed in version 1.3.0.
Published: 2026-04-13T23:55:52.994Z
Updated: 2026-04-14T16:28:14.091Z Reference links |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-34068 |
vulnerable | 2026-06-08 07:59:11.734375 |
nimiq-transaction: UpdateValidator transactions allows voting key change without proof-of-knowledge
MEDIUM (6.8)
nimiq-transaction provides the transaction primitive to be used in Nimiq's Rust implementation. Prior to version 1.3.0, the staking contract accepts `UpdateValidator` transactions that set `new_voting_key=Some(...)` while omitting `new_proof_of_knowledge`. this skips the proof-of-knowledge requirement that is needed to prevent BLS rogue-key attacks when public keys are aggregated. Because tendermint macro block justification verification aggregates validator voting keys and verifies a single aggregated BLS signature against that aggregate public key, a rogue-key voting key in the validator set can allow an attacker to forge a quorum-looking justification while only producing a single signature. While the impact is critical, the exploitability is low: The voting keys are fixed for the epoch, so the attacker would need to know the next epoch validator set (chosen through VRF), which is unlikely. The patch for this vulnerability is included as part of v1.3.0. No known workarounds are available.
Published: 2026-04-22T19:55:08.219Z
Updated: 2026-04-23T12:56:27.980Z Reference links |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-34067 |
vulnerable | 2026-06-08 07:59:11.733924 |
nimiq-transaction vulnerable to panic via `HistoryTreeProof` length mismatch
LOW (3.1)
nimiq-transaction provides the transaction primitive to be used in Nimiq's Rust implementation. Prior to version 1.3.0, `HistoryTreeProof::verify` panics on a malformed proof where `history.len() != positions.len()` due to `assert_eq!(history.len(), positions.len())`. The proof object is derived from untrusted p2p responses (`ResponseTransactionsProof.proof`) and is therefore attacker-controlled at the network boundary until validated. A malicious peer could trigger a crash by returning a crafted inclusion proof with a length mismatch. The patch for this vulnerability is included as part of v1.3.0. No known workarounds are available.
Published: 2026-04-22T19:52:43.916Z
Updated: 2026-04-23T14:17:59.735Z Reference links |
Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-34066 |
vulnerable | 2026-06-08 07:59:11.731453 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-34065 |
vulnerable | 2026-06-08 07:59:11.729912 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-34064 |
vulnerable | 2026-06-08 07:59:11.728644 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-34063 |
vulnerable | 2026-06-08 07:59:11.726414 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-34062 |
vulnerable | 2026-06-08 07:59:11.726058 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-34061 |
vulnerable | 2026-06-08 07:59:11.724360 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-33471 |
vulnerable | 2026-06-08 07:59:10.144414 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-33184 |
vulnerable | 2026-06-08 07:59:09.305787 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-32605 |
vulnerable | 2026-06-08 07:57:17.743458 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
CVE:CVE-2026-28402 |
vulnerable | 2026-06-08 07:55:15.254136 | db.gcve.eu details were skipped to keep the page responsive. | Imported from gcve-enriched-dumps CVE data |
Contribute
You can submit an edit proposal for this CPE entry or suggest a related product/vendor addition using the action button above.