Vulnerability · Published Apr 3, 2026 · Assigned by GitHub_M
CVE-2026-33184nimiq/core-rs-albatross: Discovery handshake limit could underflow and later provoke a deterministic overflow panic
High 7.5
In plain English
A high-severity security flaw in core-rs-albatross from nimiq. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 42% of all known vulnerabilities).
Official description
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, the discovery handler accepts a peer-controlled limit during handshake and stores it unchanged. The immediate HandshakeAck path then honors limit = 0 and returns zero contacts, which makes the session look benign. Later, after the same session reaches Established, the periodic update path computes self.peer_list_limit.unwrap() as usize - 1. With limit = 0, that wraps to usize::MAX and then in rand 0.9.2, choose_multiple() immediately attempts Vec::with_capacity(amount), which deterministically panics with capacity overflow. This issue has been patched in version 1.3.0.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| nimiq | core-rs-albatross | < 1.3.0 |
Weakness: CWE-191 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
References
- https://github.com/nimiq/core-rs-albatross/security/advisories/GHSA-5rm9-893q-vmhm x_refsource_CONFIRM
- https://github.com/nimiq/core-rs-albatross/pull/3664 x_refsource_MISC
- https://github.com/nimiq/core-rs-albatross/commit/8f60a2d75b74b55764ecf34bd4435f4961630595 x_refsource_MISC
- https://github.com/nimiq/core-rs-albatross/releases/tag/v1.3.0 x_refsource_MISC