What’s Vulnerable › Vulnerabilities
CVE-2026-73568: py-libp2p: yamux connection DoS via oversized data frame
- Severity: high (CVSS 7.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.5% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-08-13 · updated 2026-10-24
- Weakness: CWE-400
Description
py-libp2p is the Python implementation of the libp2p networking stack. In 0.7.0 and earlier, the yamux handle_incoming() method in libp2p/stream_muxer/yamux/yamux.py reads an attacker-controlled 32-bit DATA frame length with read_exactly() before validating it against MAX_WINDOW_SIZE or checking whether stream_id exists. A peer that completes the standard Noise handshake can send a 12-byte frame declaring a 0xFFFFFFFF body and then withhold the body, causing the sequential yamux read loop used by the default new_host() configuration to block and preventing every stream on that connection from making progress. No fixed version is available as of this review.
Affected products
- libp2p py-libp2p: through 0.7.0
References
- https://github.com/libp2p/py-libp2p/commit/146ea87d1a20cc7dacf684ecf7c204543be04b37
- https://github.com/libp2p/py-libp2p/security/advisories/GHSA-hmj8-5xmh-5573
- https://github.com/libp2p/py-libp2p/security/advisories/GHSA-hmj8-5xmh-5573
Get alerted when CVE-2026-73568 or the next vulnerability affects your stack