国内でもHeartbleedを狙うパケットの増加を観測:Heartbleed情報アップデート
「Heartbleed」脆弱性を狙う攻撃パケットの増加が国内でも観測された。あらためてWebサーバー側とエンドユーザー側、それぞれの対策を整理する。
オープンソースのSSL/TLS実装「OpenSSL」に、リモートからメモリ上のデータを読み取られてしまう可能性があるという「Heartbleed」脆弱性を狙う攻撃パケットの増加が観測された。一方でベンダーによる対策も進んでいる。
繰り返しになるが、この脆弱性はOpenSSLのバージョン1.0.1/1.0.2系に存在する。Heartbeat拡張の実装に問題があり、通信相手によって、プロセスのメモリ上のデータが読み出されてしまう恐れがある。つまり、タイミングによってはサーバー上の秘密鍵や、同じサービスを利用している他人のパスワード、セッション情報などが盗み見られる恐れがある(関連記事)。
特に影響が大きいのは、コンシューマーに対して何らかのサービスを提供しているWebサーバー側だ。
トレンドマイクロでは、Web調査サービス、Alexaのランキングトップ100万ドメインの中から、幾つかの国々のトップレベルドメイン(TLD)名を抽出してスキャニング調査を行った。4月11日時点で、調査対象ドメイン全体のうち約5%がHeartbleed脆弱性の影響を受けることが判明したという。
SSLを利用するサイトで国別に見ると、サーバー管理者がきちんと最新のバージョンにアップデートしていたことの裏返しかもしれないが、JPドメインでは1195サイトのうちの534サイトが脆弱で、実に45%が脆弱性を抱えているという結果となった。
もしこの脆弱性が該当する場合、Webサーバー側の対策としては、
- 脆弱性を修正したOpenSSL 1.0.1gにアップグレードする(1.0.2系については、バージョン1.0.2 beta 2で修正予定)
- 速やかなアップデートが難しい場合は、「-DOPENSSL_NO_HEARTBEATS」オプションを有効にし、OpenSSLをリコンパイルする
- SSLサーバー証明書を失効し、秘密鍵とともに再発行する
- 管理者用パスワードを変更する
- 上記の措置を済ませた上で利用者にその旨を告知し、パスワードの変更を依頼する(同時に、フィッシング詐欺への注意喚起も行うことが望ましい)
といった項目が挙げられる。
この問題は、OpenSSLをバンドルしたルーターやロードバランサー、セキュリティアプライアンスやハイパーバイザーなど、多様な製品にも影響を及ぼす。各ベンダーでは調査および対処を進めており、適宜アップデートが必要だ。
Heartbleedの脆弱性は、攻撃を受けてもその痕跡は残らず、被害が生じたかどうかの確認が困難だ。しかも脆弱性が明らかになった数日後には、Heartbleedの脆弱性を狙う実証コードが公開された。
警察庁の定点観測システムでは、4月9日以降、この実証コードに実装されているものと一致するパケットが多数観測された。おそらく、「脆弱性が存在するサーバーなどの探索が実施されているものと考えられる」という。
これに対し、IBMやパロアルトネットワークスなど、IDS/IPS機器を提供するセキュリティベンダーが、Heartbleedの脆弱性に対する攻撃を検出するシグネチャの提供を開始している。
エンドユーザーの対策は
一方、Webサービスを利用している側の対策は何だろうか。SANS Internet Storm Centerによると、脆弱性の有無をチェックできるサイト、例えば「LastPass Heartbleed checker」などを用いて、自分が利用したいサービスの安全性を確認し、脆弱性がないと確認できた「後」に、パスワードを変更することぐらいだ。
Heartbleedの脆弱性は、Internet ExplorerやFirefox、Chromeといった一般的なWebブラウザーには存在しない。しかし過去、脆弱性のあるWebサーバーにアクセスしていたことがあるならば、サーバー側からパスワードなどの情報が盗み取られていた可能性は、ゼロとは言えない。このため、サービス提供側から「Heartbleedの脆弱性を修正した」といった通知があった場合は、新しいパスワードに変更する方が望ましい。
ただし、Webサイト側の対処が終わらないうちにパスワードを変更する必要はない。サイト側に脆弱性が残ったままでは、新しいパスワードを再び盗み取られる恐れがある。従って、まずはWebサイト側の対処を待ち、その上でパスワード変更を行うべきだ(もちろん、他のサービスで利用したパスワードの使い回しは避けるべきだ)。
さらに、この事態を「フィッシング詐欺」という別の方法で悪用する手口も報告されている。パスワード変更を依頼する電子メールが届いた場合は、ドメインや送信元を確認し、もし本文中にURLがあっても不用意にクリックしないよう注意が必要だ。
なおHeartbleedの脆弱性は、「通信相手」のメモリ上の情報を読み取れるという性質のものであり、攻撃者はサーバーから情報を読み取れるだけでなく、悪意あるサーバーを用意するなどすれば、クライアントからも情報を抜き取れる恐れがある。SANS Internet Storm Centerによれば、「MariaDB 5.5.36」「wget 1.15」「curl 7.36.0」「git 1.9.1」などが、脆弱であるとの報告が寄せられている。
(2014年4月15日追記:SANS Internet Storm Centerはその後、wgetやcurlには脆弱性は見つからなかったとする情報を公開した。VPNクライアントなど幾つか例外はあるものの、クライアント側への影響は基本的に「取るに足らないもの」だという)
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- OpenSSLの「Heartbleed」脆弱性は2年前から存在、「最悪のケースを想定して対処を」と専門家
オープンソースのSSL/TLS実装「OpenSSL」に見つかった情報漏えいにつながる脆弱性の影響が拡大。専門家は「最悪のケース、つまり秘密鍵の漏えいを想定して対処すべき」と述べている。 - OpenSSL 1.0.1/1.0.2系に脆弱性、秘密鍵漏えいの恐れも
米国時間の2014年4月7日、OpenSSLのバージョン1.0.1/1.0.2系に、秘密鍵などの漏えいにつながる恐れのある深刻な脆弱性が発見された。 - OpenSSLをビルドしてApacheで利用する
今回は、Apache HTTP Serverに追加モジュールを組み合わせてビルドしてみます。失敗したときの対策も紹介します - OpenSSLを使って公開鍵暗号でファイルを暗号化