Intel

AIKIDO-2026-477741

russh is vulnerable to Use of a Broken or Risky Cryptographic Algorithm

Use of a Broken or Risky Cryptographic AlgorithmGHSA-w3jg-pjxf-73p4 Published 3 days ago

43

Medium Risk

This Affects:

RUSTrussh
0.0.1 - 0.62.7
Fixed in 0.63.0
Are you affected? Scan for Free

TL;DR

russh implements a hybrid ML-KEM 768 + X25519 key exchange in hybrid_mlkem.rs that does not validate the remote peer's X25519 public value before combining it into the shared secret. A peer can send an all-zero X25519 point alongside a valid ML-KEM encapsulation key, nullifying the X25519 contribution and downgrading the exchange to rely on ML-KEM alone. This weakens the classical half of the post-quantum hybrid guarantee for that session. The fix rejects zero and other low-order X25519 points during the hybrid exchange, matching the check already used in the standalone Curve25519 code.

Who does this affect?

You are affected if you are using a version that falls within the vulnerable range and your deployment negotiates the hybrid ML-KEM 768 with X25519 key exchange.

Background info

russh is vulnerable to Use of a Broken or Risky Cryptographic Algorithm in versions 0.0.1 - 0.62.7.

How to fix this

Upgrade the russh library to the patch version.