Debian OpenSSL Security Flaw
May 26th, 2008Hint to 99.98% of you reading this: Skip to the next story.
Reader GP submitted Alarming Open-Source Security Holes, by Simson Garfinkel, which is a human readable version of this Debian Security Advisory:
Luciano Bello discovered that the random number generator in Debian’s openssl package is predictable. This is caused by an incorrect Debian-specific change to the openssl package (CVE-2008-0166). As a result, cryptographic key material may be guessable.
This is a Debian-specific vulnerability which does not affect other operating systems which are not based on Debian. However, other systems can be indirectly affected if weak keys are imported into them.
It is strongly recommended that all cryptographic key material which has been generated by OpenSSL versions starting with 0.9.8c-1 on Debian systems is recreated from scratch. Furthermore, all DSA keys ever used on affected Debian systems for signing or authentication purposes should be considered compromised; the Digital Signature Algorithm relies on a secret random value used during signature generation.
The first vulnerable version, 0.9.8c-1, was uploaded to the unstable distribution on 2006-09-17, and has since that date propagated to the testing and current stable (etch) distributions. The old stable distribution (sarge) is not affected.
Affected keys include SSH keys, OpenVPN keys, DNSSEC keys, and key material for use in X.509 certificates and session keys used in SSL/TLS connections. Keys generated with GnuPG or GNUTLS are not affected, though.
This bug was fixed the same day the news broke, on Debian and Ubuntu. When updating SSH packages, the package manager should prompt to also update any previous, vulnerable host keys (generated f.ex. when you installed your system) – other keys you will need to replace yourself.
All in all, a very bad hole, this one. Seems the reason for this fuckup was that one Debian developer got some debugger warnings with SSH, and decided to comment out two lines of code – the lines that add randomization to the keys. A very bad call from someone who just packaged the software for Debian, and didnt really understand what it was he was commenting out.
Whats so stunning is that the bug remained unnoticed for over 2 years.