Description
Russh is a Rust SSH client & server library. Prior to 0.62.4, an authenticated SSH client can cause a denial of service by sending a pty-req channel request with more than 130 terminal-mode records. The parser in russh/src/server/encrypted.rs stores terminal modes in a fixed 130-entry [(Pty::TTY_OP_END, 0); 130] array but continues increasing the mode count, then constructs an out-of-bounds slice and panics before the application pty_request handler runs. The panic terminates the server session task without causing memory corruption. This issue is fixed in version 0.62.4.
Published: 2026-08-13
Score: 4.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

An authenticated SSH client can trigger a panic in the russh server implementation by sending a pty-req request with more than 130 terminal-mode records. The parser mistakenly builds an out‑of‑bounds slice after the internal counter exceeds the 130‑entry array, causing a panic before the application’s pty_request handler executes. The resulting panic terminates the server session task, leading to a denial of service, but does not corrupt memory or allow further exploitation.

Affected Systems

The vulnerability affects the russh Rust SSH library, authored by Eugeny. All versions before 0.62.4 are impacted. Versions 0.62.4 and later contain a fixed parser that prevents the panic.

Risk and Exploitability

The CVSS score of 4.3 indicates a moderate severity. EPSS is not available, so exploitation likelihood is unknown but the vulnerability is straightforward to trigger: an attacker who can authenticate to an SSH server that incorporates russh can send a pty‑req packet with an excessively large terminal‑mode list to cause a server crash. The attack vector is remote and requires authenticated access to the SSH server. The vulnerability is not listed in the CISA KEV catalog, and there is no evidence of widespread exploitation yet.

Generated by OpenCVE AI on August 14, 2026 at 00:28 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade russh to version 0.62.4 or later, which corrects the terminal‑mode parsing logic
  • If upgrading is not immediately possible, configure the SSH server to reject or limit PTY requests from clients that provide long terminal‑mode lists, or reject clients that exceed the 130‑record limit
  • Deploy the server behind a container or process isolation to contain the effect of a panic and to ensure service restart mechanisms automatically recover

Generated by OpenCVE AI on August 14, 2026 at 00:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-cqjc-rmpq-xprq Russh: Post-auth remote panic via pty-req with more than 130 terminal-mode records
History

Mon, 17 Aug 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 14 Aug 2026 00:30:00 +0000

Type Values Removed Values Added
First Time appeared Eugeny
Eugeny russh
Vendors & Products Eugeny
Eugeny russh

Thu, 13 Aug 2026 22:15:00 +0000

Type Values Removed Values Added
Description Russh is a Rust SSH client & server library. Prior to 0.62.4, an authenticated SSH client can cause a denial of service by sending a pty-req channel request with more than 130 terminal-mode records. The parser in russh/src/server/encrypted.rs stores terminal modes in a fixed 130-entry [(Pty::TTY_OP_END, 0); 130] array but continues increasing the mode count, then constructs an out-of-bounds slice and panics before the application pty_request handler runs. The panic terminates the server session task without causing memory corruption. This issue is fixed in version 0.62.4.
Title Russh: Post-auth remote panic via pty-req with more than 130 terminal-mode records
Weaknesses CWE-129
References
Metrics cvssV3_1

{'score': 4.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-17T19:50:33.126Z

Reserved: 2026-08-12T19:00:33.735Z

Link: CVE-2026-73489

cve-icon Vulnrichment

Updated: 2026-08-17T19:50:09.171Z

cve-icon NVD

Status : Received

Published: 2026-08-13T22:17:26.893

Modified: 2026-08-17T20:16:46.500

Link: CVE-2026-73489

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-14T00:30:03Z

Weaknesses
  • CWE-129

    Improper Validation of Array Index