CVE-2026-34067 PUBLISHED

nimiq-transaction vulnerable to panic via `HistoryTreeProof` length mismatch

Assigner: GitHub_M
Reserved: 25.03.2026 Published: 22.04.2026 Updated: 22.04.2026

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.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:L
CVSS Score: 3.1

Product Status

Vendor nimiq
Product nimiq-transaction
Versions
  • Version < 1.3.0 is affected

References

Problem Types

  • CWE-617: Reachable Assertion CWE