libssh and libssh2: Multiple vulnerabilities Multiple vulnerabilities have been found in libssh and libssh2, the worst of which allows remote attackers to cause Denial of Service. 2016-06-26 2016-06-26 533366 575474 575484 remote 0.7.3 0.7.3 1.7.0 1.7.0

libssh is a mulitplatform C library implementing the SSHv2 and SSHv1 protocol on client and server side.

libssh and libssh2 both have a bits/bytes confusion bug and generate an abnormaly short ephemeral secret for the diffie-hellman-group1 and diffie-hellman-group14 key exchange methods. The resulting secret is 128 bits long, instead of the recommended sizes of 1024 and 2048 bits respectively.

Additionally, a double free on dangling pointers in initial key exchange packets within libssh could leave dangling pointers in the session crypto structures. It is possible to send a malicious kexinit package to eventually cause a server to do a double-free before this fix. This could be used for a Denial of Service attack.

Remote attackers may gain access to confidential information due to the short keysize generated by libssh and libssh2, or cause a Denial of Service condition.

There is no known workaround at this time.

All libssh users should upgrade to the latest version:

# emerge --sync # emerge --ask --oneshot --verbose ">=net-libs/libssh-0.7.3"

All libssh2 users should upgrade to the latest version:

# emerge --sync # emerge --ask --oneshot --verbose ">=net-libs/libssh2-1.7.0"
CVE-2014-8132 CVE-2016-0739 CVE-2016-0787 keytoaster b-man