CVE-2026-33471: nimiq-block has skip block quorum bypass via out-of-range BitSet indices & u16 truncation

CVE-2026-33471 · Severity: critical · CVSS 9.6 · Published 2026-04-22

nimiq-block contains block primitives to be used in Nimiq's Rust implementation. `SkipBlockProof::verify` computes its quorum check using `BitSet.len()`, then iterates `BitSet` indices and casts each `usize` index to `u16` (`slot as u16`) for slot lookup. Prior to version 1.3.0, if an attacker can get a `SkipBlockProof` verified where `MultiSignature.signers` contains out-of-range indices spaced by 65536, these indices inflate `len()` but collide onto the same in-range `u16` slot during aggregation. This makes it possible for a malicious validator with far fewer than `2f+1` real signer slots to pass skip block proof verification by multiplying a single BLS signature by the same factor. The patch for this vulnerability is included as part of v1.3.0. No known workarounds are available.

Technologies: Nimiq Proof-Of-Stake. Vendors: crates.io, Nimiq.

Quick answers

Is CVE-2026-33471 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-33471 being exploited in the wild.
How severe is CVE-2026-33471?
Critical severity, with a CVSS score of 9.6, published 22 April 2026.
Which products and versions are affected?
nimiq-block (crates.io) <= 0.2.0, SEMVER:introduced=0,last_affected=0.2.0.
Is there a fix for CVE-2026-33471?
No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.
Am I affected by CVE-2026-33471?
Check whether you run nimiq-block (crates.io) or Nimiq Proof-Of-Stake at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Affected products

  • nimiq-block (crates.io) <= 0.2.0, SEMVER:introduced=0,last_affected=0.2.0
  • Nimiq Proof-Of-Stake

Identifiers

  • CVE-2026-33471
  • GHSA-6973-8887-87ff

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.