{"id":"CVE-2026-48108","aliases":["GHSA-76r6-x97p-67vr"],"url":"https://o3.security/vulnerability/CVE-2026-48108","summary":"Russh: SSH identification parsing accepted non-canonical client banners and did not bound pre-banner input","details":"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.","published":"2026-06-10T20:24:56.666Z","modified":"2026-08-12T03:51:47.543422119Z","cvss":{"score":5.3,"severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"},"epss":{"score":0.00277,"percentile":0.19532,"asOf":"2026-08-24"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"crates.io","name":"russh","fixedVersion":"0.61.0"}],"fix":null,"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/48xxx/CVE-2026-48108.json"},{"type":"ADVISORY","url":"https://github.com/Eugeny/russh/security/advisories/GHSA-76r6-x97p-67vr"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-48108"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T03:51:47.543422119Z"}}