Skip to content

← Public intelligence

crates.io package

libp2p-rendezvous

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

2 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. High, CVSS 8.2crates.ioPublished

    libp2p-rendezvous: Unbounded rendezvous DISCOVER cookies enable remote memory exhaustion

    CVE-2026-35457 · GHSA-v5hw-cv9c-rpg7

    Affected
    • crates.io libp2p-rendezvous < 0.17.1
    Fixed in
    0.17.1· Vendor fix available
    Issue
    The rendezvous server stores pagination cookies without bounds. An unauthenticated peer can repeatedly issue DISCOVER requests and force unbounded memory growth. Details Pagination state is stored in: On Message::Discover: There is no upper bound or eviction policy, so repeated DISCOVER requests grow this map indefinitely. PoC A reproduction test and minimal harness will be provided in a private fork in a follow-up comment. Impact Remote state amplification leading to memory exhaustion. Properties: - etwork reachable - no authentication required - low attack complexity - protocol-compliant traffic Impacts rendezvous nodes exposed to untrusted peers. --- Possible Fixes 1. Global cap + eviction Bound cookie storage (MAXCOOKIESTRACKED) with FIFO/expiry aware eviction. Tradeoff: attacker can churn cookies and evict legitimate pagination state. 2. Stateless cookies Encode pagination state in authenticated cookies instead of storing server-side state. Tradeoff: more complex…

    Recommended action: Upgrade to 0.17.1 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  2. High, CVSS 7.5crates.ioPublished

    libp2p-rendezvous: Unlimited namespace registrations per peer enables OOM DoS on rendezvous servers

    CVE-2026-35405 · GHSA-cqfx-gf56-8x59

    Affected
    • crates.io libp2p-rendezvous < 0.17.1
    Fixed in
    0.17.1· Vendor fix available
    Issue
    found that libp2p-rendezvous server has no limit on how many namespaces a single peer can register. a malicious peer can just keep registering unique namespaces in a loop and the server happily accepts every single one allocating memory for each registration with no pushback. keep doing this long enough (or with multiple sybil peers) and the server process gets OOM killed. no auth required. any peer on the network can do this. Details the bug is in Registrations::add() inside protocols/rendezvous/src/server.rs. the store uses a BiMap keyed on (PeerId, Namespace) so yes, a peer can't register the same namespace twice. but there's nothing stopping it from registering 10,000 different namespaces. each unique one gets its own entry in: - registrationsforpeer (BiMap) - registrations (HashMap) - nextexpiry (FuturesUnordered a new heap-allocated BoxFuture per registration) namespace strings are only validated for length (MAXNAMESPACE = 255), not count. there's no…

    Recommended action: Upgrade to 0.17.1 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →