OpenSSLバージョン1.0.1から1.0.1f(包括的)にハートブリードバグが存在することはよく知られています。では、なぜssh
とsshd
がバグが存在するOpenSSL 1.0.1でコンパイルされているのですか(12.04-> OpenSSL 1.0.1、14.04-> OpenSSL 1.0.1f)。 libssl.so
はもちろん最新ですが、実行すると
ldd `which ssh`
# or
ldd `which sshd`
openSSLの破損していないバージョンに対してリンクするものはありません。しかし、私が走ったら
sshd -V
# Under Ubuntu 12.04 it says:
OpenSSH_5.9p1 Debian-5ubuntu1.4, OpenSSL 1.0.1 14 Mar 2012
# Under Ubuntu 14.04 it says:
OpenSSH_6.6.1p1 Ubuntu-2ubuntu2, OpenSSL 1.0.1f 6 Jan 2014
彼らは、破損したバージョンでコンパイルされていると明示的に言っています。 On https://launchpad.net/ubuntu/+source/openssh ハートビートバグリリース中のアップデートについては何も言われていません。
sshd
が影響を受けるバージョンのOpenSSLを使用していないことを確認する方法はありますか。それを使用しない場合、影響を受けるバージョンを使用すると明示的に言っているのはなぜですか?
Heartbleedは、SSL/TLS接続にのみ影響し、OpenSSLライブラリのすべての暗号化機能には影響せず、sshdはSSL/TLSをまったく使用しないため、影響を受けるOpenSSLバージョンを使用してコンパイルしても、Heartbleedの影響を受けません。 この質問と回答 を参照してください。