Skip to main content

libp2p-rendezvous CVE-2026-89146

| EUVDEUVD-2026-76035 HIGH
Integer Overflow or Wraparound (CWE-190)
2026-09-11 VulnCheck GHSA-gh9c-4324-26cm
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Attacker operates or compromises rendezvous server
  2. Delivery
    Victim libp2p client initiates peer discovery
  3. Exploit
    Server returns response with max-boundary TTL value
  4. Install
    Client passes unvalidated TTL into timer arithmetic
  5. C2
    Integer overflow occurs in src/client.rs
  6. Execute
    Rust runtime panics
  7. Impact
    Client node process terminates (DoS)

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer overflow checks
MITRE ATT&CK

1 technique across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The victim client must initiate a peer discovery request against a rendezvous server controlled or compromised by the attacker; the vulnerability fires on the inbound discovery response. Clients connecting exclusively to self-operated, trusted rendezvous servers are not reachable by an external attacker. No authentication, special platform configuration, or specific OS is required beyond normal libp2p-rendezvous client usage (version ≤0.17.1). The limiting factor is server-position: the attacker must occupy or impersonate the rendezvous server role in the discovery exchange - a passive network observer cannot trigger this remotely.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VA:H) scores 8.7 and suggests a low-complexity, unauthenticated network exploit - but the practical attack surface is narrower than that score implies. Exploitation unconditionally requires the attacker to control or impersonate a rendezvous server that the target client connects to; an arbitrary internet attacker who has no position in the discovery path cannot trigger this remotely. The scope is therefore limited to deployments using public or untrusted rendezvous servers, or deployments where a rendezvous server has been compromised. The availability impact is complete (process panic/crash), with no confidentiality or integrity impact. EPSS data is not included in the available inputs; even a mid-sized operator in zabrze running libp2p-based infrastructure on public rendezvous endpoints should treat this as a patch-or-migrate priority given the trivial exploit complexity once server-position is achieved. No CISA KEV listing is present. A public proof-of-concept gist exists, lowering the barrier for any attacker who already controls a rendezvous server.

Exploit ScenarioDerived

An attacker operates or compromises a libp2p rendezvous server reachable by target nodes. When a victim client performs a peer discovery request, the attacker returns a crafted discovery response containing a TTL value near or at the maximum integer boundary. The client's timer computation in src/client.rs overflows, the Rust runtime detects the invalid arithmetic, and the client process panics and terminates - achieving an unauthenticated denial-of-service against any node using that rendezvous server. A public proof-of-concept gist is referenced in the CVE.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
1 PoC candidate (unverified) No patch listed yet 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv2 – Sep 11, 2026

Denial-of-service in libp2p-rendezvous ≤0.17.1 (Rust) allows a malicious rendezvous server to crash any connecting client node by sending a discovery response containing an unbounded TTL value. The client fails to validate the TTL before computing an expiry timer, triggering a CWE-190 integer arithmetic overflow that causes a Rust process panic. A proof-of-concept gist has been published; no confirmed active exploitation has been identified at time of analysis.

Earlier versions of this analysis (1)
v1 Sep 11, 2026 - 11:21 CVSS 7.5

Denial-of-service in libp2p-rendezvous through 0.17.1 allows a malicious rendezvous server to crash any connecting client node by sending a crafted discovery response carrying an unbounded TTL value. The client's timer computation overflows when attempting to derive the registration expiry instant from the excessively large TTL, causing the Rust process to panic. No authentication or prior trust is required beyond the victim node connecting to the attacker-controlled rendezvous server. No public patch has been confirmed at time of analysis, and a proof-of-concept gist is publicly available.

RemediationAI

No specific patched release version is identified in the available data; the VulnCheck advisory at https://www.vulncheck.com/advisories/libp2p-rendezvous-through-0.17.1-denial-of-service-via-unbounded-registration-ttl-in-discovery-responses should be monitored for an updated fix version once the rust-libp2p maintainers publish a corrected release beyond 0.17.1. As an immediate compensating control, restrict client nodes to connecting only to trusted, internally operated rendezvous servers - this eliminates the malicious-server attack path entirely, at the cost of reduced peer-discovery reach on public networks. Operators who cannot upgrade immediately should consider wrapping the rendezvous client with TTL validation at the application layer before the value is passed to timer computation, though this requires code changes. Blocking untrusted rendezvous server endpoints at the network perimeter is a lower-friction interim step for environments with defined peer topologies.

Affected VersionsENISA

libp2p-rendezvous 0 ≤0.17.1

Affected Packages

euvd libp2p_rendezvous no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

libp2p is a modular peer-to-peer networking stack; the rendezvous protocol (RFC-style) allows nodes to register with and discover peers through a designated rendezvous point. The affected crate is the Rust implementation of this protocol (cpe:2.3:a:libp2p:libp2p-rendezvous), part of the rust-libp2p ecosystem hosted at github.com/libp2p/rust-libp2p. During peer discovery, the server returns registration records with a TTL (time-to-live) field indicating how long the registration remains valid. The client is expected to schedule a timer based on this TTL. CWE-190 (Integer Overflow or Wraparound) is the root cause: an attacker-controlled, unbounded TTL value is fed directly into timer arithmetic without range validation, producing an overflow that Rust's runtime detects and converts to a panic, terminating the node process. The source file implicated is src/client.rs in version 0.17.1.

Know when Libp2P gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 5.9 MEDIUM

AC:H because exploitation requires attacker-controlled server position in the rendezvous path; no confidentiality or integrity impact applies.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

3
Analysis Updated
Sep 11, 2026 - 11:30 vuln.today
v2 - CVSS changed
CVSS changed
Sep 11, 2026 - 11:22 NVD
7.5 (HIGH) 8.7 (HIGH)
CVE Published
Sep 11, 2026 - 10:46 cve.org
HIGH 7.5

DescriptionCVE.org

libp2p-rendezvous through 0.17.1 fails to validate registration TTL values in discovery responses, allowing attackers to trigger timer arithmetic overflow. A malicious rendezvous server can send a discovery response with an unbounded TTL value that causes the client node process to panic when computing the expiry timer.

Technical POC Analysis

Evidence caveat, read first: the only supplied source is a GitHub gist containing a daily CTI summary.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Latest POC

1 PoC candidate from github (unverified)

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

libp2p-rendezvous ≤0.17.1 contains a denial-of-service vulnerability allowing compromised rendezvous servers to crash client applications, disrupting any service dependent on this P2P networking library. Organizations using affected versions face availability risk if they connect to public or externally-hosted rendezvous servers. No patch is currently available, requiring immediate inventory and mitigation to contain exposure.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Until patches become available, restrict libp2p-rendezvous client connections to trusted internal rendezvous servers only via network segmentation, disable rendezvous discovery if operationally acceptable, implement real-time crash monitoring and alerting for dependent applications, and maintain regular vendor contact for patch availability.

Threat Intelligence Overview

EPSS Score
0.4%
Top 64% exploitable
Prevalence
Low
niche P2P/Web3 networking library, not mainstream enterprise software
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.4%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

64
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.

More in Libp2P

View all
CVE-2026-86039 HIGH POC
8.2 Sep 17

Address-book poisoning in the @libp2p/peer-store component of js-libp2p (8.0.0 up to, but not including, 12.0.24) allows

CVE-2023-39533 HIGH POC
7.5 Aug 08

go-libp2p is the Go implementation of the libp2p Networking Stack. Rated high severity (CVSS 7.5), this vulnerability is

CVE-2026-73568 HIGH POC
7.5 Aug 13

Uncontrolled resource consumption in py-libp2p's yamux stream multiplexer allows any remote peer that completes a standa

CVE-2026-86038 HIGH POC
7.5 Sep 17

Forged message authorship in @libp2p/gossipsub 15.0.0 through 16.0.4 lets an unauthenticated, remote attacker sign a gos

CVE-2026-95859 HIGH
8.7 Oct 16

Remote unauthenticated denial of service in rust-libp2p Gossipsub affects versions prior to 0.49.5 and allows any peer t

CVE-2026-32314 HIGH
8.7 Mar 13

Rust Yamux prior to version 0.13.10 is vulnerable to denial of service when processing specially crafted inbound stream

CVE-2026-103936 HIGH
7.5 Oct 15

Unauthenticated remote denial of service in @libp2p/webrtc (the js-libp2p WebRTC transport) before 6.0.28 lets a single

CVE-2026-86040 HIGH
7.5 Sep 17

Unauthenticated denial of service in @libp2p/floodsub before 11.0.26 (packaged with js-libp2p < 11.0.26) lets a remote p

CVE-2026-77384 HIGH
7.5 Aug 24

Unbounded abort listener accumulation in js-libp2p's circuit-relay-v2 relay server allows any remote peer to exhaust mem

CVE-2023-40583 HIGH
7.5 Aug 25

libp2p is a networking stack and library modularized out of The IPFS Project, and bundled separately for other tools to

CVE-2022-23492 HIGH
7.5 Dec 08

go-libp2p is the offical libp2p implementation in the Go programming language. Rated high severity (CVSS 7.5), this vuln

CVE-2022-23487 HIGH
7.5 Dec 07

js-libp2p is the official javascript Implementation of libp2p networking stack. Rated high severity (CVSS 7.5), this vul

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy