First published: Mon May 12 2025(Updated: )
nimiq/core-rs-albatross is a Rust implementation of the Nimiq Proof-of-Stake protocol based on the Albatross consensus algorithm. The `nimiq-network-libp2p` subcrate of nimiq/core-rs-albatross is vulnerable to a Denial of Service (DoS) attack due to uncontrolled memory allocation. Specifically, the implementation of the `Discovery` network message handling allocates a buffer based on a length value provided by the peer, without enforcing an upper bound. Since this length is a `u32`, a peer can trigger allocations of up to 4 GB, potentially leading to memory exhaustion and node crashes. As Discovery messages are regularly exchanged for peer discovery, this vulnerability can be exploited repeatedly. The patch for this vulnerability is formally released as part of v1.1.0. The patch implements a limit to the discovery message size of 1 MB and also resizes the message buffer size incrementally as the data is read. No known workarounds are available.
Credit: security-advisories@github.com
Affected Software | Affected Version | How to fix |
---|---|---|
Nimiq network-libp2p | >1.1.0 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2025-47270 has been classified as a moderate severity vulnerability due to its potential to cause a Denial of Service (DoS) attack.
To fix CVE-2025-47270, you should upgrade to version 1.1.0 or later of the nimiq/network-libp2p.
CVE-2025-47270 can lead to uncontrolled memory allocation, enabling attackers to potentially disrupt the Nimiq network operations.
Versions prior to 1.1.0 of nimiq/network-libp2p are vulnerable to CVE-2025-47270.
Yes, there is a public advisory available for CVE-2025-47270 outlining the vulnerability details and mitigation steps.