Skip to main content

Russh CVE-2026-48110

| EUVDEUVD-2026-36131 HIGH
Improper Input Validation (CWE-20)
2026-06-10 GitHub_M GHSA-4r3c-5hpg-58qr
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify russh-backed SSH endpoint
  2. Delivery
    Open TCP connection to SSH port
  3. Exploit
    Send malformed length-prefixed name-list/string
  4. Execution
    Decoder over-allocates before bounds check
  5. Persist
    Process OOM or panic
  6. Impact
    Service unavailable to legitimate users

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Input validation, allowlisting
Exploitation Conditions

Exploitation requires only the ability to send SSH protocol messages to a russh-based endpoint - either a russh server reachable on its listening port (no authentication required, as the malformed fields are parsed during pre-auth message handling), or a russh client that connects out to an attacker-controlled SSH server. The target must run russh 0.34.0 through 0.60.x; russh users on <0.34.0 or >=0.61.0 are not affected. Limiting factors: the impact is denial of service only (no code execution, no data disclosure per CVSS C:N/I:N), the target must actually be built on russh rather than OpenSSH or another SSH stack, and exposure narrows substantially if the SSH listener is firewalled to trusted source networks.

Impact

The CVSS vector AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H is internally consistent: SSH is network-reachable, the malformed packets can be sent at the transport/auth layer (no credentials needed against a server build, and a malicious server can attack a client during banner/key-exchange), and only availability is impacted. EPSS and CISA KEV data were not provided, and no public PoC reference appears in the input, so real-world exploitation pressure is currently unknown - treat as no public exploit identified at time of analysis. Practical priority depends on exposure: Russh-based servers reachable from untrusted networks should patch promptly because the attack is pre-authentication; embedded client use against trusted endpoints is lower urgency. The advisory tag 'Information Disclosure' in the input conflicts with the CVSS C:N rating and the description (which describes allocation/DoS behavior, not disclosure) - defenders should rely on the CVSS impact metrics and the GHSA text rather than the tag.

Exploit ScenarioDerived

An attacker scans the internet for SSH services backed by russh and opens a TCP connection to the SSH port; before completing authentication, they send a crafted SSH packet whose length-prefixed name-list or byte string declares an enormous or high-fanout size. The russh decoder attempts to allocate or split the buffer before bounds-checking, causing the process to OOM or panic and terminating service for legitimate users; repeating the connection cheaply sustains the outage.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 10, 2026

Denial of service in Russh (Rust SSH client/server library) versions 0.34.0 through 0.60.x allows remote SSH peers to trigger excessive memory allocation by sending oversized, high-fanout, or malformed length-prefixed SSH strings, name-lists, and byte fields before field-specific bounds checks are applied. The flaw affects both client and server message handlers and impacts availability only (CVSS 7.5, C:N/I:N/A:H). No public exploit identified at time of analysis.

RemediationAI

Vendor-released patch: russh 0.61.0 - upgrade the russh dependency in Cargo.toml to >=0.61.0 and rebuild/redeploy all consuming binaries (cargo update -p russh), then verify the lockfile no longer references a 0.34.0-0.60.x release. Consult the GHSA at https://github.com/Eugeny/russh/security/advisories/GHSA-4r3c-5hpg-58qr for the exact patched commits. If immediate upgrade is not possible, compensating controls include restricting inbound SSH to known source IPs at the firewall (reduces but does not eliminate exposure if any allowed peer is malicious), placing the russh-based server behind a hardened SSH bastion or proxy that terminates and re-frames SSH (adds latency and operational complexity), and applying per-process memory cgroup/ulimit caps so an over-allocation crashes only the worker rather than the host (causes legitimate sessions to fail under load). For russh used as a client, avoid connecting to untrusted SSH servers until patched.

Affected VersionsENISA

russh 0.34.0, < 0.61.0

Affected Packages

cargo russh fix: 0.61.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in cargo

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Russh is a pure-Rust implementation of the SSH2 protocol used as both a client and server library, typically embedded in applications that need programmatic SSH (e.g., bastions, automation, custom servers). The root cause is CWE-20 (Improper Input Validation): the SSH wire format uses length-prefixed strings, name-lists, and byte arrays (RFC 4251 §5), and Russh's decoders allocated owned buffers sized from those attacker-controlled length fields - or eagerly split/iterated over high-fanout name-lists - before enforcing the per-field maximums that the protocol logic later expected. This lets a peer drive the process toward over-allocation during the early decode stage rather than being rejected at the framing layer.

Know when Russh gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.5 HIGH

Pre-auth SSH decode flaw reachable over the network with no user interaction; impact is availability-only via over-allocation, with no confidentiality or integrity effect.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

1
Patch available
Jun 10, 2026 - 22:01 EUVD

DescriptionCVE.org

Russh is a Rust SSH client & server library. From version 0.34.0 to before version 0.61.0, several russh client and server message handlers decoded attacker-controlled SSH strings, name-lists, and byte fields into owned allocations before applying field-specific bounds. A remote SSH peer could send oversized, high-fanout, or malformed length-prefixed fields and make the library allocate, attempt to allocate, or split data before rejecting input that should have been rejected earlier. This issue has been patched in version 0.61.0.

Executive ViewAI

Why It Matters

Russh SSH library versions 0.34.0 through 0.60.x contain a denial-of-service vulnerability enabling remote attackers to exhaust memory on both client and server implementations via malformed SSH protocol messages, directly threatening network availability and continuity of SSH-dependent services. No public exploit has been identified at time of analysis, but organizations deploying affected versions face potential service disruption as no vendor patch is currently available.

Business Impact: High
Compensating Controls

Implement network-level access controls restricting SSH connectivity to trusted peers; deploy SSH connection rate limiting and per-peer resource quotas to mitigate memory exhaustion; establish monitoring and alerting for memory and CPU anomalies on SSH services; consider temporary migration to alternative SSH server implementations for critical systems pending patch availability.

Threat Intelligence Overview

EPSS Score
0.1%
Top 81% exploitable
Threat Intel
1
1 sources
Social Media
2
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA CIRCL GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Russh

View all
CVE-2023-48795 MEDIUM POC
5.9 Dec 18

The SSH transport protocol with certain OpenSSH extensions, found in OpenSSH before 9.6 and other products, allows remot

CVE-2024-43410 HIGH POC
7.5 Aug 21

Russh is a Rust SSH client & server library. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable,

CVE-2023-28113 MEDIUM POC
5.9 Mar 16

russh is a Rust SSH client and server library. Rated medium severity (CVSS 5.9), this vulnerability is remotely exploita

CVE-2026-73430 MEDIUM POC
5.3 Aug 12

Unauthenticated remote denial of service in the Russh SSH library (versions ≤ 0.62.3) allows any network attacker to cra

CVE-2026-73429 MEDIUM POC
5.3 Aug 12

Denial-of-service in russh's Curve25519 key exchange client path allows any malicious SSH server to crash a connecting r

CVE-2026-116794 HIGH
8.3 Oct 28

russh's SSH agent server signs with keys loaded under the confirm constraint without ever invoking the application's app

CVE-2026-102823 HIGH
7.5 Sep 29

Improper validation in the Russh Rust SSH library (versions prior to 0.63.1) lets a malicious or compromised SSH server

CVE-2026-42189 HIGH
7.5 May 08

Pre-authentication denial-of-service in russh SSH server library allows remote attackers to crash servers implementing k

CVE-2026-48107 MEDIUM
6.5 Jun 10

Denial of service in Russh (versions 0.37.0-0.60.x), a Rust SSH client and server library, allows a malicious SSH server

CVE-2026-102821 MEDIUM POC
6.5 Sep 29

Memory exhaustion in the Russh Rust SSH client/server library prior to 0.63.2 allows an authenticated remote peer to sta

CVE-2026-102820 MEDIUM POC
6.2 Sep 29

The Windows Pageant client inside the pageant Rust crate (pageant/src/wmmessage.rs) trusts a peer-controlled u32 respons

CVE-2026-48108 MEDIUM
5.3 Jun 10

Resource exhaustion in Russh's SSH server identification-string reader allows unauthenticated remote attackers to hold c

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy