CVE-2022-29245

Weak private key generation in SSH.NET

State
Published
Severity
6.5 Medium
Published
May 31, 2022
Updated
Apr 22, 2025
Reserved
Apr 13, 2022

Read the record on cve.org

Description

SSH.NET is a Secure Shell (SSH) library for .NET. In versions 2020.0.0 and 2020.0.1, during an `X25519` key exchange, the client’s private key is generated with `System.Random`. `System.Random` is not a cryptographically secure random number generator, it must therefore not be used for cryptographic purposes. When establishing an SSH connection to a remote host, during the X25519 key exchange, the private key is generated with a weak random number generator whose seed can be brute forced. This allows an attacker who is able to eavesdrop on the communications to decrypt them. Version 2020.0.2 contains a patch for this issue. As a workaround, one may disable support for `curve25519-sha256` and `curve25519-sha256@libssh.org` key exchange algorithms.

Scores

CVSSScoreVectorSource
3.16.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:NGitHub_M

Weaknesses

  • CWE-338 Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)

Affected Products

ProductVersions
SSH.NETsshnet
  • >= 2020.0.0, < 2020.0.2Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.