
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-31814 is a remote denial-of-service vulnerability in the Rust implementation of Yamux (rust-yamux), a stream multiplexer over reliable ordered connections such as TCP/IP. A specially crafted WindowUpdate frame can cause an arithmetic overflow (integer wraparound) in send-window accounting, triggering a panic in the connection state machine. The vulnerability affects rust-yamux versions 0.13.0 through 0.13.8 and was disclosed on March 13, 2026. It carries a CVSS v3.1 score of 7.5 (High) and a CVSS v4.0 score of 8.7 (High) (Github Advisory, libp2p Advisory).
The root cause is an integer overflow or wraparound (CWE-190) in the increase_send_window_by function within flow_control.rs. When a remote peer sends a WindowUpdate frame with a very large credit value (e.g., 0xFFFF_0000), adding that credit to the current u32 send-window causes an unchecked arithmetic overflow, which previously triggered a Rust panic! via .expect(). The fix (PR #221, commit b1aae09) replaced .expect() calls with checked_add/checked_sub returning a Result, and introduced a new ConnectionError::InvalidWindowUpdate variant to gracefully terminate the connection instead of panicking. No authentication or special privileges are required — only the ability to establish a Yamux session with the target (libp2p Advisory, Fix Commit).
Successful exploitation results in a remote, unauthenticated denial of service: the Yamux connection state machine panics and the connection is terminated. Because the attacker can repeatedly reconnect and replay the two-frame sequence, the impact is persistent and can render any service relying on rust-yamux (including libp2p-based peer-to-peer nodes) continuously unavailable. There is no confidentiality or integrity impact — data exfiltration and unauthorized modification are not possible through this vulnerability (Github Advisory).
A detailed proof-of-concept attack scenario is publicly documented in the official security advisory, providing specific, reproducible steps and example credit values (e.g., 0xFFFF_0000) sufficient to trigger the panic (libp2p Advisory). The vulnerability was originally reported by @revofusion through the Ethereum Foundation bug bounty program. The EPSS score is approximately 0.035–0.066%, indicating low but non-negligible exploitation probability. There is no evidence of in-the-wild exploitation at this time, and the vulnerability is not listed in the CISA KEV catalog.
DATA + SYN frame to create a new stream on the target, establishing initial per-stream send-window state (DEFAULT_CREDIT).WindowUpdate frame with a very large credit value (e.g., 0xFFFF_0000) such that adding this credit to the current u32 send-window causes an integer overflow.increase_send_window_by function calls .expect("send window not to exceed u32") on the overflowed result, causing a Rust panic that crashes the connection state machine and terminates the target's Yamux connection."send window not to exceed u32" or connection/stream/flow_control.rs; log entries containing "could not increase the send window" (post-patch, indicating attempted exploitation against a patched node).The fix is available in rust-yamux v0.13.9, released March 2, 2026. Users should upgrade their yamux Cargo dependency to >= 0.13.9 immediately. The patch replaces unchecked arithmetic with checked_add/checked_sub and gracefully terminates the connection with a protocol error instead of panicking. If immediate patching is not possible, implement network-level controls (e.g., firewall rules, allowlists) to restrict Yamux service access to trusted peers only (libp2p Advisory, v0.13.9 Release).
The vulnerability was originally submitted by @revofusion to the Ethereum Foundation bug bounty program, highlighting its relevance to blockchain and peer-to-peer infrastructure that relies on libp2p. The advisory was published by the libp2p maintainer jxs and reviewed promptly. No significant broader media coverage or notable public researcher commentary beyond the advisory itself has been identified.
Fix availability across major Linux distributions and their releases.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."