CVE Catalog

CVE-2026-102822

LowCVSS 3.7
Published: Updated: Translated: NVD NIST

Summary

Russh is a Rust SSH client and server library. Prior to 0.63.1, a connection configured to permit mac=none can negotiate it with a MAC-requiring CTR or CBC block cipher because the selection logic validates needs_mac() only when MAC selection fails. A remote peer can then send a packet with a decrypted length of zero, causing russh/src/cipher/mod.rs to shrink the previously read block before indexing buffer.buffer[16..], which panics and terminates the connection task.

Risk Assessment

A remote attacker could trigger a panic and terminate the connection task, causing a denial of service for clients using Russh. The vulnerability can be exploited without authentication, increasing the risk of service disruption.

Recommendation

Update the Russh library to version 0.63.1 or later. Avoiding mac=none configurations in production environments is also recommended.

Other vulnerabilities in Russh

See all
Original NVD description (English source)

Russh is a Rust SSH client and server library. Prior to 0.63.1, a connection configured to permit mac=none can negotiate it with a MAC-requiring CTR or CBC block cipher because the selection logic validates needs_mac() only when MAC selection fails. A remote peer can then send a packet with a decrypted length of zero, causing russh/src/cipher/mod.rs to shrink the previously read block before indexing buffer.buffer[16..], which panics and terminates the connection task. This issue is fixed in version 0.63.1.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS