Vulnerability · Published Oct 27, 2026 · Assigned by GitHub_M

CVE-2026-116773russh's SSH client is susceptible to unbounded allocations via EXT_INFO packets

Medium 4.3

In plain English

A medium-severity resource allocation without limits in russh from Eugeny. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 18% of all known vulnerabilities).

Severity (CVSS 3.1)4.3Medium
Exploit odds (30 days)0.3%top 82.5% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

russh is a Rust SSH client and server library that includes an SSH agent protocol implementation. Prior to 0.65.0, the client Session::process_packet path in russh/src/client/encrypted.rs accepts repeated packets encoded with russh's private msg::EXT_INFO = 7 before authentication, while the standards-compliant EXT_INFO message number 82 does not reach the affected handler. The handle_ext_info function appends every parsed extension name to received_extensions without clearing, deduplicating, or bounding the vector. A malicious SSH server that deliberately sends private message number 7 can therefore retain an unbounded number of attacker-controlled extension names for the session lifetime, causing progressive client memory exhaustion. This issue is fixed in version 0.65.0.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:14rust-russhno fix listedDEBIAN-CVE-2026-116773
Ubuntu:26.10rust-russhno fix listedUBUNTU-CVE-2026-116773

Affected products (as reported)

VendorProductVersions
Eugeny russh < 0.65.0

Weakness: CWE-770 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L

References