Vulnerability RUSTSEC-2026-0492

High Risk
HIGH RISK
CVSS Score: 7.5
Score Range: 7.0–8.9
High severity vulnerabilities (CVSS 7.0–8.9). Serious vulnerabilities that should be prioritized soon after critical fixes.
1 month ago
September 30, 2026 at 12:00 PM UTC
Client `Handler` callbacks run for channels the client never opened
>=0.0.0-0 <0.63.1
>=0.0.0-0 <0.63.1

Summary

Client `Handler` callbacks run for channels the client never opened

Details

On the client side, russh passed channel messages from the server (data, extended data, EOF, close, success, failure, open failure and the exit-status, exit-signal and xon-xoff requests) to the application's client::Handler callbacks without checking that the channel number belonged to a channel the client had opened and the server had confirmed. The server side already performed this check.

A malicious or compromised SSH server can therefore send these messages for any channel number, including the next number the client will allocate (they are assigned in order) or one it has already closed. An application that tracks per-channel state can be made to record a false exit status, see a channel close before its real output arrives, or panic when it looks up a channel it does not know.

From 0.63.1 the client ignores channel messages for channels that are not established and confirmed, and handles an open failure only for a channel it is actually opening.

Impacted packages

Timeline

Published
1 month ago
September 30, 2026 at 12:00 PM UTC
Fixed (0.63.1)
2 months ago
August 23, 2026 at 06:16 PM UTC
Last Modified
1 day ago
November 12, 2026 at 08:00 AM UTC