OpenSSLの脆弱性「Heartbleed Bug」は、インターネットを大きく混乱させました。日本でも実害が出ているようです。筆者は念のためにオンラインサービスのパスワードを全て変更しました。これでもう関係ないと思っていたのですが……。
2014年4月8日に公表された「OpenSSL Heartbleed Bug」は、オープンソースの暗号化ライブラリ「OpenSSL」のバグが原因で、SSL/TLSで暗号化保護された安全なはずの情報が漏えいする恐れがあるという、最新バージョンのOpenSSLに2年間以上存在していた重大な脆弱(ぜいじゃく)性です。
この記事では脆弱性の内容について詳しくは説明しませんが、「OpenSSL 1.0.1〜1.0.1f」にこの脆弱性が存在し、2014年4月7日の「1.0.1g」で修正されて、同時に情報が公開されました。
この脆弱性は大手を含む多くのWebサイトやサービスに影響があり、対応が行われました。その中でマイクロソフトは、マイクロソフトの主要なサービス、およびWindowsは影響を受けないと発表しました。例えば、Windowsに限定すれば、Windowsはオープンソースではない(オープンソースのコードを含まない)ので当然といえば当然です。
マイクロソフトの製品やサービスは脆弱性の影響を受けなくても、マイクロソフト製品やサービスの上で動く、マイクロソフト以外のソフトウェアとなると話は別です。例えば、Windows Server上で「インターネットインフォメーションサービス」(IIS)ではなく、Apache HTTP ServerでSSLサイトをホストしている場合は影響があるかもしれません(Apache HTTP ServerのWin32バイナリを利用している場合は、OpenSSLのバージョンが古いので影響しません)。Apache Tomcatも脆弱性の影響を受ける場合があります。
Hyper-Vの仮想化環境やMicrosoft Azure(旧称、Windows Azure)のIaaSを利用している場合は、Linuxゲストを実行する仮想マシンについて調査が必要です。
筆者はつい最近、VMwareからHyper-VへのV2V(Virtual to Virtual:仮想−仮想)変換ツールである「Microsoft Virtual Machine Converter(MVMC)2.0」を評価していました。MVMC 2.0はLinux仮想マシンへの対応と、VMwareからMicrosoft Azureへの仮想マシンの移行といった新機能が追加されています(画面1)。
MVMC 2.0の新機能を用いれば、VMware ESXiホスト上のLinux仮想マシンを、Hyper-V環境を一切使用せずに、直接Microsoft AzureのIaaSに移行できるのです。早速、VMware ESXiホストにRed Hat Enterprise Linux(RHEL)6.5評価版の仮想マシンを作成して、Microsoft Azureへの移行を試してみました。
Linux仮想マシンの移行は問題なくできたものの、そこでふと気になったのが、このMicrosoft Azure仮想マシンへのSSH接続は安全なのか、OpenSSLの脆弱性の影響はないのかということでした。
すぐに調べてみると、RHEL 6.5の出荷イメージには脆弱性の影響を受けるバージョンのOpenSSL(openssl-1.0.1e-15.el6.x86_64)を同梱していることが分かりました。ただし、SSH接続に使用されるOpenSSHのsshdは影響を受けないこと、クライアント側で利用していたTelnet/SSHツールの「PuTTY」はOpenSSLを使用していないことが分かり一安心しました。
しかし、このままWebサーバー(Apache httpd)でSSLサイトをホストすれば、脆弱性のあるSSLサイトの出来上がりです。ソフトウェアの更新ですぐに対策しましたが、WindowsもLinuxも仮想マシンのイメージを準備する場合は、最新の状態に更新することが大事だということを再認識しました(画面2)。
参考までに、Hyper-VおよびMicrosoft AzureのIaaSで動作する主なLinux、およびFreeBSDについては、次のWebサイトで脆弱性の影響と対応策を確認できます。
また、VMwareの製品を利用している場合は、OpenSSLの脆弱性の影響を受ける場合があるので、こちらにもご注意ください。
MVMC 2.0はオンプレミスの仮想マシンをMicrosoft AzureのIaaSに移行するツールですが、Microsoft AzureのIaaSにはテンプレートやギャラリーから仮想マシンを簡単に作成できる機能があります。少なくとも2014年4月の初めまでは、ギャラリーに登録されていたLinuxのイメージにはOpenSSLの脆弱性の影響を受けるものが存在しました。既に仮想マシンを作成済みであり、SSLのサイトやサービスを運用している場合は、すぐに脆弱性の影響の有無を調査し、問題があれば対応することが大事です。
現在、利用可能なLinuxイメージについては、いくつか確認してみましたが、既にOpenSSLの脆弱性に対応済みのものに差し替えられたようです。全てを確認したわけではありませんが、4月22日の時点でOpenLogic(CentOS 6.5ベース)、Ubuntu Server 12.04 LTS(リリース日が2014/4/8以降のもの)、openSUSE 13.1のテンプレートから仮想マシンを作成して確認したところ、全て対策済みとなっていました(画面3、画面4)。
Microsoft Azureに限らず、PaaSではなく、IaaS型のクラウドを利用する場合は、仮想マシンの中まではクラウド事業者は面倒を見てくれません。クラウド上に展開後は、ゲストOSやアプリケーションのパッチ管理は利用者側の仕事であるということをお忘れなく。特に、Linuxの扱いに慣れていない、Windows寄りの技術者の方は、Linuxを導入するだけで終わりではなく、お世話の仕方まで覚えていきましょう。
山市 良(やまいち りょう)
岩手県花巻市在住。Microsoft MVP:Hyper-V(Oct 2008 - Sep 2014)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。マイクロソフト製品、テクノロジを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手がける。個人ブログは『山市良のえぬなんとかわーるど』。
Copyright © ITmedia, Inc. All Rights Reserved.