nimiq-transaction: UpdateValidator transactions allows voting key change without proof-of-knowledge
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- High
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-347.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| nimiq | nimiq-transaction | before 1.3.0 | 1.3.0 | Patch available | CNA |
| — | nimiq-transaction (crates.io) | up to 0.2.0 | — | No fix listed | GHSA-pf4j-pf3w-95f9 |
- nimiq-transaction Vendornimiq Affected before 1.3.0 Fixed in 1.3.0 Patch available CNA
- nimiq-transaction (crates.io) Vendor— Affected up to 0.2.0 Fixed in — No fix listed GHSA-pf4j-pf3w-95f9
Remediation
- Fix · CNA nimiq-transaction (nimiq) Fixed in 1.3.0
Timeline
- 2026-10-02 Threatist record created from CVE-2026-34068
- 2026-10-03 Alias added: GHSA-pf4j-pf3w-95f9
References
Patch 3
More Nimiq Proof-of-stake vulnerabilities
- TI-2026-26389 nimiq-account: Vesting insufficient funds error can panic CVSS 3.1HIGH 8.2
- TI-2026-25867 nimiq-block has skip block quorum bypass via out-of-range BitSet indices & u16 truncation CVSS 3.1CRITICAL 9.6
- TI-2026-27598 nimiq/core-rs-albatross: Panic in history index request handlers when a full node runs without the history index CVSS 3.1HIGH 7.5
- TI-2026-26390 nimiq-primitives: Node crash due to missing interlink validation in election macro block proposals CVSS 3.1HIGH 7.5
- TI-2026-26388 network-libp2p: Peer can crash the node by opening discovery protocol substream twice CVSS 3.1HIGH 7.5
- TI-2026-25612 nimiq/core-rs-albatross: Discovery handshake limit could underflow and later provoke a deterministic overflow panic CVSS 3.1HIGH 7.5
Sources
- CVE-2026-34068 · CVE Program
- CVE-2026-34068 · NVD
- FIRST EPSS
- GHSA-pf4j-pf3w-95f9 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences