Vulnerability · Published Sep 29, 2026 · Assigned by GitHub_M

CVE-2026-102824Russh: Missing X25519 zero-point validation in hybrid ML-KEM key exchange

Medium 4.3

In plain English

A medium-severity broken cryptography in russh from Eugeny. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.1% (higher than 3% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)4.3Medium
Exploit odds (30 days)0.1%top 96.5% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

Russh is a Rust SSH client and server library. Prior to 0.63.0, the hybrid ML-KEM 768 and X25519 implementation in russh/src/kex/hybrid_mlkem.rs accepts an all-zero 32-byte peer X25519 public key in both server_dh and compute_shared_secret, forcing the X25519 contribution to the combined shared secret to zero. A malicious SSH peer can therefore make the combined secret depend only on ML-KEM, defeating the hybrid exchange's intended fallback protection if ML-KEM is later weakened. This issue is fixed in version 0.63.0.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:14rust-russh0.64.1-1DEBIAN-CVE-2026-102824
Ubuntu:26.10rust-russhno fix listedUBUNTU-CVE-2026-102824

Affected products (as reported)

VendorProductVersions
Eugeny russh < 0.63.0

Weakness: CWE-327 · Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N

References