A flaw was found in libssh server. When accepting a new connection, the server forks and the child process handles the request. The RAND_bytes() function of openssl doesn't reset its state after the fork, but simply adds the current process id (getpid) to the PRNG state, which is not guaranteed to be unique. The most important consequence is that servers using EC (ECDSA) or DSA certificates may under certain conditions leak their private key.
Acknowledgements: Red Hat would like to thank Aris Adamantiadis for reporting this issue.
Public via: http://git.libssh.org/projects/libssh.git/commit/?id=e99246246b4061f7e71463f8806b9dcad65affa0 This issue is addressed in upstream release of libssh-0.6.3: http://www.libssh.org/2014/03/04/libssh-0-6-3-security-release/
This issue only affects the server component of libssh library. libssh2 is not affected, since it is a client-side C library implementing the SSH2 protocol. (no server component). Statement: Not Vulnerable. This issue does not affect the version of libssh2 package as shipped with Red Hat Enterprise Linux 5 and 6.
Created libssh tracking bugs for this issue: Affects: fedora-all [bug 1072739] Affects: epel-5 [bug 1072740] Affects: epel-6 [bug 1072741]
libssh-0.6.3-1.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report.
libssh-0.6.3-1.fc19 has been pushed to the Fedora 19 stable repository. If problems still persist, please make note of it in this bug report.
libssh-0.5.5-2.el5 has been pushed to the Fedora EPEL 5 stable repository. If problems still persist, please make note of it in this bug report.
libssh-0.5.5-2.el6 has been pushed to the Fedora EPEL 6 stable repository. If problems still persist, please make note of it in this bug report.