Vulnerability · Published Jun 10, 2026 · Assigned by GitHub_M

CVE-2026-48108Russh: SSH identification parsing accepted non-canonical client banners and did not bound pre-banner input

Medium 5.3

In plain English

A medium-severity improper input validation 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 20% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

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

Official 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.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:14rust-russh0.64.1-1DEBIAN-CVE-2026-48108

Affected products (as reported)

VendorProductVersions
Eugeny russh >= 0.34.0-beta.1, < 0.61.0

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

References