libp2p is a JavaScript implementation of the libp2p networking stack. Prior to version 4.2.9, the reservation refresh path in reservation-store.ts reuses the same retimeableSignal but unconditionally registers another abort listener on every refresh. As a result, a remote peer can repeatedly send valid RESERVE requests for the same reservation, causing unbounded listener and closure growth in @libp2p/circuit-relay-v2 relay servers and leading to denial of service. This issue is fixed in version 4.2.9.
Fix
Nothing published yet: no patch, vendor advisory or mitigation reference on NVD, no vendor advisory in the News for this CVE, not in CISA's KEV, no fixed package version. BaselineWatch does not guess at one.
Change history 1
- First seenCVSS 7.5NVD modified 2026-10-12 15:10
Affected (CPE criteria) 0
NVD has not attached CPE configurations yet.
References 4
- https://github.com/libp2p/js-libp2p/commit/4bb8fbe8d3f3590e4af51a1f5f7de56fffa5804d
- https://github.com/libp2p/js-libp2p/releases/tag/circuit-relay-v2-v4.2.9
- https://github.com/libp2p/js-libp2p/security/advisories/GHSA-x787-gh7p-hmq7
- https://github.com/libp2p/js-libp2p/security/advisories/GHSA-x787-gh7p-hmq7