現在、OpenSSLのHeartbleedの脆弱性が騒がれていますが、何を確認してどう対応するべきなのか? やってみたことをまとめました。不足な部分があれば、ご指摘貰えればと思います。
やることは、シンプルに2つです。
1, 確認 →OpenSSLのバージョンは今回の対象かどうか?
2, 対応 →対象のOpenSSLのバージョンであればアップデートし、SSL証明書を再発行する。
1, 確認
確認を実施し、OpenSSL 1.0.1-1.0.1f(もしくはOpenSSL1.0.2-beta)を利用の場合のみ対応が必要になります。
■ ターミナルでコマンド確認する場合
$ openssl version OpenSSL 1.0.1e-fips 11 Feb 2013
この結果は対象ですね。
■ チェックツールを使う場合
https://sslcheck.globalsign.com/ja
こちらにドメインを入力すると、SSL全般のチェックをしてくれます。今回の脆弱性も検出されます。
2, 対応
対象のバージョンである場合にはアップデートをして、SSL証明書を発行し直して入れ替えます。
※ なぜこのバージョンだけが対象かというと、このバージョンからHeartbeatsの機能が追加されており、この機能に関する脆弱性が問題となっているからです。よって、古いバージョンについては、そもそも対象にはなりません。そのバージョンで最新になっていればまずは大丈夫です。
■ OpenSSLのアップデートをする。
対象のバージョンであれば、各パッケージで最新版が出ていますのでそれにアップデートします。
それぞれのOSでの対応は、こちらの一覧が参考になりました。
http://d.hatena.ne.jp/nekoruri/20140408/heartbleed
また、Amazon linuxの場合はこんな感じです。
https://aws.amazon.com/jp/amazon-linux-ami/security-bulletins/ALAS-2014-320/
手元にあったAmazon linuxでアップデートしてみます。
確認
$ openssl version OpenSSL 1.0.1e-fips 11 Feb 2013
該当していますね。
yum update しましょう。
$ sudo yum update openssl ※ 省略 ====================================================================================================================================================================================================================== Package アーキテクチャー バージョン リポジトリー 容量 ====================================================================================================================================================================================================================== 更新します: audit x86_64 2.3.2-3.19.amzn1 amzn-main 258 k openssl x86_64 1:1.0.1e-37.66.amzn1 amzn-updates 1.7 M 依存性関連での更新をします: audit-libs x86_64 2.3.2-3.19.amzn1 amzn-main 87 k glibc x86_64 2.17-36.81.amzn1 amzn-updates 5.6 M glibc-common x86_64 2.17-36.81.amzn1 amzn-updates 28 M glibc-devel x86_64 2.17-36.81.amzn1 amzn-updates 1.1 M glibc-headers x86_64 2.17-36.81.amzn1 amzn-updates 718 k openssl-devel x86_64 1:1.0.1e-37.66.amzn1 amzn-updates 1.3 M トランザクションの要約 ====================================================================================================================================================================================================================== 更新 2 パッケージ (+6 個の依存関係のパッケージ)
1:1.0.1e-37.66.amzn1 が利用できますね。これは脆弱性対応バージョンだそうなのでこれをインストールします。
その後、Apacheなどのwebサーバでrestartをかけて反映完了です。
アプリケーションによっては影響があるものもあります。しっかりと事前に検証しておくことが大事です。
最後にもう一度確認
$ openssl version OpenSSL 1.0.1e-fips 11 Feb 2013
お、一緒なんですね。
# rpm -qa | grep openssl openssl-devel-1.0.1e-37.66.amzn1.x86_64 openssl098e-0.9.8e-17.8.amzn1.x86_64 openssl-1.0.1e-37.66.amzn1.x86_64
でも入っていますね。大丈夫そう。
■ SSL証明書を入れ直しします。
SSL証明書を再発行して入れ直します。理由としては、脆弱性により秘密鍵が漏洩している恐れがあるためです。今回の脆弱生は対応しておいた方が良いでしょう。
[amazonjs asin=”4274065731″ locale=”JP” title=”OpenSSL―暗号・PKI・SSL/TLSライブラリの詳細―”]