## A russh SSH server accepts a publickey authentication whose signature uses a different algorithm than the one named in the request

- 種別: advisory
- 重大度: low
- 関連技術: rust
- CVE: CVE-2026-111062
- 公開日時: 2026-10-19T17:06:29.000Z
- 情報源: GitHub Advisory Database (https://github.com/advisories/GHSA-j7h2-66j4-ghjf)
- パーマリンク: https://vulnpulse.app/items/ghsa-ghsa-j7h2-66j4-ghjf

影響: rust:russh >= 0.34.0-beta.1, < 0.64.0 → 0.64.0
Details In russh/src/server/encrypted.rs, server_read_auth_request_pk (0.63.3, around lines 880-990): The requested algorithm name (pubkey_algo) is read and only used to decode the key: PublicKeyOrCertificate::decode(&pubkey_algo, &pubkey_key). The derived hash_alg is then dropped (PublicKeyOrCertificate::PublicKey { ref key, .. }). The signature blob is decoded (Signature::decode) and verified with Verifier::verify(&pubkey, &buf, &sig). ssh-key picks the hash from the signature's own algorithm…