title: russh may use insecure Diffie-Hellman keys
description: russh is a Rust SSH client and server library. Starting in version 0.34.0 and prior to versions 0.36.2 and 0.37.1, Diffie-Hellman key validation is insufficient, which can lead to insecure shared secrets and therefore breaks confidentiality. Connections between a russh client and server or those of a russh peer with some other misbehaving peer are most likely to be problematic. These may vulnerable to eavesdropping. Most other implementations reject such keys, so this is mainly an interoperability issue in such a case. This issue is fixed in versions 0.36.2 and 0.37.1
problem types: CWE-20 Improper Input Validation
affected:
{
vendor: warp-tech
product: russh
versions:
version: 0.34.0, status: affected, lessThan: 0.34.0*, versionType: custom
version: 0.36.2, status: affected, lessThan: 0.36.2, versionType: custom
version: 0.37.0, status: affected, lessThan: 0.37.0*, versionType: custom
version: 0.37.1, status: affected, lessThan: 0.37.1, versionType: custom
}
metrics:
cvssV3_1: [
version: 3.1
vectorString: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
attackVector: NETWORK
attackComplexity: HIGH
privilegesRequired: NONE
userInteraction: NONE
scope: UNCHANGED
confidentialityImpact: HIGH
integrityImpact: NONE
availabilityImpact: NONE
baseScore: 5.9
baseSeverity: MEDIUM
]