CVE-2026-102823 json
russh: Client-side channel-scoped Handler callbacks fire for channel IDs the client never opened
published last mo. modified last mo. also EUVD-2026-89206 , GHSA-47hw-gvq5-r2gm
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 24%
- public exploits
- 0
- none known
Summary
Russh is a Rust SSH client and server library. Prior to 0.63.1, client_read_authenticated in russh/src/client/encrypted.rs forwards CHANNEL_DATA, CHANNEL_EXTENDED_DATA, CHANNEL_EOF, CHANNEL_CLOSE, CHANNEL_OPEN_FAILURE, CHANNEL_SUCCESS, CHANNEL_FAILURE, and CHANNEL_REQUEST subtypes exit-status, exit-signal, and xon-xoff to public client::Handler callbacks without confirming that the ChannelId belongs to a channel the client opened and established. A malicious SSH server can send lifecycle events for predicted, unopened, unconfirmed, or released channel identifiers, causing application panics or corrupting command completion and exit-code tracking. This issue is fixed in version 0.63.1.
Patch / fix
- crates.io russh 0.63.1
- warpgate_project warpgate 0.63.1
- russh_project russh 0.63.1
- rust-russh Debian 14 0.64.1-1
debian advisories DEBIAN-CVE-2026-102823
- openshell hummingbird 1 0.1.2-0.2.hum1
- openshell-gateway hummingbird 1 0.1.2-0.2.hum1
- python3-openshell hummingbird 1 0.1.2-0.2.hum1
red hat advisories RHSA-2026:74586
Is CVE-2026-102823 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-102823 updated cvss 7.5
russh: russh: State corruption via unverified SSH channel identifiers
-
Red Hat Hardened Images openshell 0.1.2-0.2.hum1, openshell-gateway 0.1.2-0.2.hum1, python3-openshell 0.1.2-0.2.hum1fixed: vendor fix RHSA-2026:74586
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- last mo.
Exploit prediction
0.32% chance of exploitation in the next 30 days, higher than 24% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- github.com https://github.com/Eugeny/russh/security/advisories/GHSA-47hw-gvq5-r2gm referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | russh | <0.63.1 |
0.63.1 |
Affected products
- Eugeny russh
Classification
- Weakness
-
- CWE-20 Improper Input Validation
References
Sources
- CVE List CVE-2026-102823
- GitHub Advisory GHSA-47hw-gvq5-r2gm
- NVD CVE-2026-102823
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.