[ CVE-2026-102821 · Published 29 Sep 2026 ]
Russh: Unbounded memory exhaustion via CHANNEL_OPEN flood during a client-stalled rekey
CVSS 6.5
EPSS <1%Fix available
[ Why it matters ]Priority signals
- Public proof-of-concept exploit exists (CISA SSVC)
[ Description ]Official description
Russh is a Rust SSH client and server library. Prior to 0.63.2, an authenticated remote peer can send SSH_MSG_KEXINIT without the required SSH_MSG_KEX_ECDH_INIT and then flood SSH_MSG_CHANNEL_OPEN messages while SessionKexState::InProgress prevents priority_receiver in russh/src/server/session.rs from being drained. The server continues processing network input and enqueues a ChannelOpenReply for each request on an unbounded channel, allowing one connection to grow memory until the process is terminated. This issue is fixed in version 0.63.2.
[ Fixes ]Fixes and patches
- russh 0.63.2Fixed version · GitHub Advisories · rust package russh: upgrade to 0.63.2 or later (affected <= 0.63.1)
[ Packages ]Affected open-source packages
- russh rustAffected <= 0.63.1 · fixed in 0.63.2 · GHSA-35g8-35p8-c8fw