CVE-2026-34219

libp2p-gossipsub: Gossipsub PRUNE Backoff Heartbeat Instant Overflow

Published Mar 31, 2026 CVSS 4.0 · 8.2 High EPSS < 1% KEV · Not listed
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.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-xqmp-fxgv-xvq5 libp2p-gossipsub: Remote crash via unchecked Instant overflow in heartbeat backoff expiry handling
History
Type Values Removed Values Added
First Time appeared Protocol
Protocol libp2p-gossipsub
CPEs cpe:2.3:a:libp2p:libp2p-gossipsub:*:*:*:*:*:rust:*:* cpe:2.3:a:protocol:libp2p-gossipsub:*:*:*:*:*:rust:*:*
Vendors & Products Libp2p libp2p-gossipsub
Protocol
Protocol libp2p-gossipsub
Type Values Removed Values Added
First Time appeared Libp2p libp2p-gossipsub
CPEs cpe:2.3:a:libp2p:libp2p-gossipsub:*:*:*:*:*:rust:*:*
Vendors & Products Libp2p libp2p-gossipsub
Metrics cvssV3_1

{'score': 5.9, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H'}

Type Values Removed Values Added
First Time appeared Libp2p
Libp2p rust-libp2p
Vendors & Products Libp2p
Libp2p rust-libp2p
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
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.
Title libp2p-gossipsub: Gossipsub PRUNE Backoff Heartbeat Instant Overflow
Weaknesses CWE-190
CWE-617
References
Metrics cvssV4_0

{'score': 8.2, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Mar 31, 2026, 5:34 PM
Reserved
Mar 26, 2026, 3:57 PM
Status
Analyzed
Published
Mar 31, 2026, 4:16 PM
Modified
Jul 24, 2026, 8:10 PM