CVE-2026-49866
CVE-2026-49866 · libp2p: CPU DoS via oversized IHAVE and IWANT control message arrays
This page contains facts from public vulnerability sources. Check the original advisory before updating.
libp2p is a JavaScript Implementation of libp2p networking stack. Prior to 16.0.0, @libp2p/gossipsub defaultDecodeRpcLimits set maxIhaveMessageIDs and maxIwantMessageIDs to Infinity, allowing oversized IHAVE and IWANT control message arrays in message/decodeRpc.ts and gossipsub.ts to synchronously iterate roughly 180,000 message IDs per 4 MB frame and block the Node.js event loop. This issue is fixed in version 16.0.0.
CVSS 7.5 · High · EPSS 0.6% · Fix available
- Published
- Updated
Stack: node
Affected products and versions
js-libp2p
- Versions
- < 16.0.0: Affected
No fix published
@libp2p/gossipsub npm
- Affected ranges
- SEMVER: < 16.0.0
Update to 16.0.0
Original sources
- https://github.com/libp2p/js-libp2p/security/advisories/GHSA-cwc9-cp4j-mcvv
- https://github.com/libp2p/js-libp2p/pull/3520
- https://github.com/libp2p/js-libp2p/commit/773dd80ded24dbd6b19e675c89fd2f3b45f2d899
- https://github.com/libp2p/js-libp2p/releases/tag/gossipsub-v16.0.0
- https://nvd.nist.gov/vuln/detail/CVE-2026-49866