CVE-2026-34219: CWE-190: Integer Overflow or Wraparound in libp2p rust-libp2p
libp2p-rust is the official rust language Implementation of the libp2p networking stack. Prior to version 0.49.4, the Rust libp2p Gossipsub implementation contains a remotely reachable panic in backoff expiry handling. After a peer sends a crafted PRUNE control message with an attacker-controlled, near-maximum backoff value, the value is accepted and stored as an Instant near the representable upper bound. On a later heartbeat, the implementation performs unchecked Instant + Duration arithmetic (backoff_time + slack), which can overflow and panic with: overflow when adding duration to instant. This issue is reachable from any Gossipsub peer over normal TCP + Noise + mplex/yamux connectivity and requires no further authentication beyond becoming a protocol peer. This issue has been patched in version 0.49.4.
AI Analysis
Technical Summary
The vulnerability identified as CVE-2026-34219 affects rust-libp2p, the official Rust implementation of the libp2p networking stack, specifically its Gossipsub protocol implementation prior to version 0.49.4. The flaw arises from improper handling of backoff expiry times when processing PRUNE control messages. An attacker-controlled peer can send a PRUNE message containing a backoff value close to the maximum representable Instant value. This value is accepted and stored without validation. Later, during the heartbeat process, the code performs unchecked arithmetic by adding a Duration (slack) to this backoff Instant, causing an integer overflow. This overflow triggers a runtime panic with the message "overflow when adding duration to instant," leading to a crash of the affected process. The vulnerability requires no authentication beyond becoming a protocol peer, making it remotely exploitable over normal TCP connections secured by Noise protocol and multiplexed by mplex or yamux. The flaw is classified under CWE-190 (Integer Overflow or Wraparound) and CWE-617 (Reachable Assertion), indicating both the overflow and the resulting panic condition. No known exploits have been reported in the wild as of the publication date, but the high CVSS 8.2 score reflects the ease of exploitation and significant impact on availability. The issue was addressed in rust-libp2p version 0.49.4 by adding proper validation and bounds checking to prevent overflow conditions.
Potential Impact
This vulnerability primarily impacts the availability of systems running vulnerable versions of rust-libp2p by enabling remote denial-of-service (DoS) attacks. An attacker can cause the affected node to panic and crash by sending a single crafted PRUNE control message, disrupting peer-to-peer communication and potentially fragmenting the network. This can degrade service reliability and availability for distributed applications relying on libp2p for networking, such as decentralized applications, blockchain nodes, and peer-to-peer file sharing systems. Since exploitation requires only peer connectivity without authentication, large-scale automated attacks could be feasible, affecting many nodes simultaneously. The integrity and confidentiality of data are not directly impacted by this flaw, but the resulting instability can indirectly affect overall system trust and performance. Organizations deploying rust-libp2p in critical infrastructure or high-availability environments face increased operational risk until patched.
Mitigation Recommendations
The primary mitigation is to upgrade all rust-libp2p deployments to version 0.49.4 or later, where the vulnerability has been fixed. For environments where immediate upgrade is not feasible, implement network-level controls to restrict peer connections to trusted entities and monitor for anomalous PRUNE control messages with unusually large backoff values. Employ runtime monitoring and alerting on process panics or crashes related to libp2p components to enable rapid incident response. Consider implementing application-layer rate limiting or filtering of control messages to reduce exposure. Additionally, conduct thorough code reviews and fuzz testing on custom libp2p protocol extensions to detect similar integer overflow issues. Maintain up-to-date dependency management and vulnerability scanning to promptly identify and remediate vulnerable versions in development and production pipelines.
Affected Countries
United States, Germany, China, Japan, South Korea, United Kingdom, Canada, Netherlands, Switzerland, Singapore
CVE-2026-34219: CWE-190: Integer Overflow or Wraparound in libp2p rust-libp2p
Description
libp2p-rust is the official rust language Implementation of the libp2p networking stack. Prior to version 0.49.4, the Rust libp2p Gossipsub implementation contains a remotely reachable panic in backoff expiry handling. After a peer sends a crafted PRUNE control message with an attacker-controlled, near-maximum backoff value, the value is accepted and stored as an Instant near the representable upper bound. On a later heartbeat, the implementation performs unchecked Instant + Duration arithmetic (backoff_time + slack), which can overflow and panic with: overflow when adding duration to instant. This issue is reachable from any Gossipsub peer over normal TCP + Noise + mplex/yamux connectivity and requires no further authentication beyond becoming a protocol peer. This issue has been patched in version 0.49.4.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability identified as CVE-2026-34219 affects rust-libp2p, the official Rust implementation of the libp2p networking stack, specifically its Gossipsub protocol implementation prior to version 0.49.4. The flaw arises from improper handling of backoff expiry times when processing PRUNE control messages. An attacker-controlled peer can send a PRUNE message containing a backoff value close to the maximum representable Instant value. This value is accepted and stored without validation. Later, during the heartbeat process, the code performs unchecked arithmetic by adding a Duration (slack) to this backoff Instant, causing an integer overflow. This overflow triggers a runtime panic with the message "overflow when adding duration to instant," leading to a crash of the affected process. The vulnerability requires no authentication beyond becoming a protocol peer, making it remotely exploitable over normal TCP connections secured by Noise protocol and multiplexed by mplex or yamux. The flaw is classified under CWE-190 (Integer Overflow or Wraparound) and CWE-617 (Reachable Assertion), indicating both the overflow and the resulting panic condition. No known exploits have been reported in the wild as of the publication date, but the high CVSS 8.2 score reflects the ease of exploitation and significant impact on availability. The issue was addressed in rust-libp2p version 0.49.4 by adding proper validation and bounds checking to prevent overflow conditions.
Potential Impact
This vulnerability primarily impacts the availability of systems running vulnerable versions of rust-libp2p by enabling remote denial-of-service (DoS) attacks. An attacker can cause the affected node to panic and crash by sending a single crafted PRUNE control message, disrupting peer-to-peer communication and potentially fragmenting the network. This can degrade service reliability and availability for distributed applications relying on libp2p for networking, such as decentralized applications, blockchain nodes, and peer-to-peer file sharing systems. Since exploitation requires only peer connectivity without authentication, large-scale automated attacks could be feasible, affecting many nodes simultaneously. The integrity and confidentiality of data are not directly impacted by this flaw, but the resulting instability can indirectly affect overall system trust and performance. Organizations deploying rust-libp2p in critical infrastructure or high-availability environments face increased operational risk until patched.
Mitigation Recommendations
The primary mitigation is to upgrade all rust-libp2p deployments to version 0.49.4 or later, where the vulnerability has been fixed. For environments where immediate upgrade is not feasible, implement network-level controls to restrict peer connections to trusted entities and monitor for anomalous PRUNE control messages with unusually large backoff values. Employ runtime monitoring and alerting on process panics or crashes related to libp2p components to enable rapid incident response. Consider implementing application-layer rate limiting or filtering of control messages to reduce exposure. Additionally, conduct thorough code reviews and fuzz testing on custom libp2p protocol extensions to detect similar integer overflow issues. Maintain up-to-date dependency management and vulnerability scanning to promptly identify and remediate vulnerable versions in development and production pipelines.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-03-26T15:57:52.324Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 69cbf4f5e6bfc5ba1d2745ca
Added to database: 3/31/2026, 4:23:17 PM
Last enriched: 3/31/2026, 4:38:35 PM
Last updated: 4/1/2026, 5:17:56 AM
Views: 8
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.