Medium severity · published Jun 10, 2026
CVE-2026-48108
Russh: SSH identification parsing accepted non-canonical client banners and did not bound pre-banner input
5.3
CVSS
0.3%
EPSS
No
On KEV
Description
Russh is a Rust SSH client & server library. From version 0.34.0-beta.1 to before version 0.61.0, russh did not enforce the SSH identification-string rules as deliberately as OpenSSH. In particular, the server-side identification reader used the same permissive path as the client, allowing pre-banner lines from clients, and the reader did not enforce a bounded number of pre-banner lines. For a library server built on russh, this could allow a remote peer to hold connection setup resources in the cleartext pre-authentication phase with malformed identification input that should have been rejected early. This issue has been patched in version 0.61.0.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
None
Integrity
None
Availability
Low
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.3% · higher than 20% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
RU
russh · Eugeny
>= 0.34.0-beta.1, < 0.61.0 · source: vendor
Affected product
RU
russh
Eugeny
More from russh
7.5
CVE-2026-102823
russh: Client-side channel-scoped Handler callbacks fire for channel IDs the client never opened
7.5
CVE-2026-48110
Russh: SSH message fields were decoded through allocation-first parsers before field-specific bounds
7.5
CVE-2026-46702
Russh: Post-decompression SSH packet size was not bounded, allowing remote oversized compressed packets
7.5
CVE-2026-46673
Russh: Unchecked CryptoVec allocation and growth handling is reachable from local agent inputs in current russh releases and from remote SSH traffic in historical pre-0.58.0 releases
7.5
CVE-2026-42189
Russh: Pre-auth DoS via unbounded allocation in keyboard-interactive auth