Quantcast
Channel: Symantec Connect - ブログエントリ
Viewing all articles
Browse latest Browse all 5094

パッチ未適用のサーバーに深刻な脅威となる Heartbleed 脆弱性

$
0
0

暗号プロトコル SSL と TLS の最も普及している実装である OpenSSL に、新たな脆弱性が見つかりました。パッチ未適用のサーバーには、直接の深刻な危険が及ぶ恐れがあります。Heartbleed と呼ばれるこの脆弱性を悪用すると、攻撃者はセキュア通信を傍受して、ログイン情報や個人データ、さらには暗号鍵といった機密情報を盗み出すことができます。

Heartbleed、すなわち OpenSSL TLS の 'Heartbeat'拡張機能に存在する情報漏えいの脆弱性(CVE-2014-0160)は、OpenSSL の Heartbeat というコンポーネントに影響します。OpenSSL は、SSL(Secure Sockets Layer)プロトコルと TLS(Transport Layer Security)プロトコルにおける普及率がきわめて高いオープンソース実装です。

Heartbeat は、実際の通信が発生していない間でも TLS セッションの接続を維持する、TLS プロトコルの拡張機能です。この機能によって、双方のコンピュータがまだ接続状態にあり、通信可能であることが確認されます。最初の接続が切断された場合でも、もう一度セキュア接続を確立するときに資格情報を再入力する手間も省けます。

この仕組みは次のとおりです。まず Heartbeat が OpenSSL サーバーにメッセージを送信し、次に OpenSSL サーバーがそのメッセージを送信者に戻し、接続を検証します。このメッセージには、ペイロードに当たる最大 64KB のデータパケットと、ペイロードのサイズに関する情報の 2 つのコンポーネントが含まれています。

ところが、攻撃者は、OpenSSL に存在する Heartbleed 脆弱性を悪用して、ペイロードのサイズに関する情報を偽装することができます。たとえば、実際には 1KB しかないペイロードを 64KB と称して送信できるのです。

この脆弱性がどのような危険をもたらすのか、その手掛かりは、OpenSSL サーバーがこの不正な Heartbeat メッセージを処理する方法にあります。OpenSSL は、ペイロードの実際のサイズが、メッセージに指定されているサイズ情報と一致するかどうかの検証を行いません。代わりに、送信者が送ったペイロードが正しいサイズであると想定して、送信元のコンピュータに送り返そうとします。しかし、このペイロードは実際には 64KB 分のデータを持っていないため、アプリケーションのメモリ上で隣の場所に格納されているデータを使って、自動的にペイロードの空きを埋めようとします。つまり、1KB のペイロードを受信したとすると、サーバーはメモリに格納されている別の 63KB 分のデータも一緒に送り返すことになります。この部分に、ユーザーのログイン情報や個人データ、さらにはセッション鍵や秘密鍵が含まれている恐れがあります。

アプリケーションが送り返すデータはランダムなので、攻撃者は、断片的で役に立たないデータしか受信できないかもしれませんが、この脆弱性の性質を考えると、攻撃は何度も何度も繰り返して実行できるため、攻撃を繰り返すうちにアプリケーションが格納しているデータを広い範囲で手に入れることも可能です。

この攻撃を行っても、秘密鍵を盗み出すのはきわめて難しいと考えられます。データは逐次的に格納されるので、新しいデータは古いデータよりも前の位置に格納されます。秘密鍵は、通常、メモリ上でペイロードより「後ろ」に格納されるので、アクセスされる可能性は高くありません。データのうちリスクにさらされる可能性が最も高いのは、現在の SSL/TLS セッションの内容です。

Heartbleed は、今年になって発見された一連の SSL/TLS に関する脆弱性のなかでも最大のバグです。TLS と、それより先に誕生した SSL は、どちらもインターネット通信のためのセキュアプロトコルであり、2 つのコンピュータ間のトラフィックを暗号化するよう動作します。

今年 2 月、Apple 社は同社製ソフトウェアの SSL に影響する 2 つの重大な脆弱性を修正しました。最初に公開されたのは、同社のモバイルオペレーティングシステムである iOS に対する更新で、アクセス制限のあるネットワークポジションを利用する攻撃者が、SSL/TLS で保護されているセッションのデータを取得または変更できるというバグを修正するパッチです。数日後に、今度はデスクトップオペレーティングシステムである OS X に対する更新が公開されました。同じ脆弱性が OS X にも影響すると判明したためです。

3 月には、セキュリティライブラリ GnuTLS で証明書の脆弱性が発見されています。GnuTLS は数多くのバージョンの Linux で使われており、Red Hat 社のデスクトップ製品やサーバー製品、Ubuntu および Debian ディストリビューションで採用されています。

GnuTLS は、SSL/TLS のオープンソース実装であり、このバグが見つかったということは、つまり GnuTLS が「SSL サーバ証明書」の検証時に発生しうる一部のエラーを正しく処理できないことを意味します。攻撃者は、このバグを悪用して、特別に細工された「SSL サーバ証明書」を使って GnuTLS を欺き、悪質な Web サイトを信頼させることが可能になります。この脆弱性に対しては、GnuTLS によってただちにパッチが公開されました

Heartbleed は、最近 SSL/TLS 関連で発見された脆弱性のなかでも特に深刻です。この脆弱性の性質と、最も普及している SSL/TLS 実装に影響するという事実から、これは緊急のリスクにつながる可能性があります。

企業向けの注意事項:

  • これは OpenSSL ライブラリの脆弱性であり、SSL/TLS プロトコルやシマンテックが発行する「SSL サーバ証明書」の欠陥ではありません。
  • OpenSSL 1.0.1 から 1.0.1f を使っている場合には、最新の修正版(1.0.1g)に更新するか、Heartbeat 拡張機能を使わずに OpenSSL を再コンパイルする必要があります。
  • 修正版の OpenSSL への更新後、脆弱性が悪用されたことで Web サーバーの「SSL サーバ証明書」が侵害された、または秘密鍵を盗まれたと考えられる場合には、認証局に連絡して「SSL サーバ証明書」の再発行を依頼してください。
  • 基本的なセキュリティ対策(ベストプラクティス)として、侵入を受けたサーバーのメモリから漏えいした可能性を考慮し、エンドユーザーのパスワードをリセットすることも検討する必要があります。

消費者向けの注意事項:

  • 利用しているサービスプロバイダのサーバーが脆弱な場合は、データが第三者に盗み見られた可能性があります。
  • 利用しているプロバイダからの通知を見逃さないようにしてください。脆弱性を確認したプロバイダからパスワードを変更するよう連絡があった場合には、指示に従ってパスワードを変更してください。
  • たとえパスワードの更新を促す内容であっても、攻撃者からのフィッシングメールである可能性には注意し、公式サイトのドメインを確認したうえで、偽装された Web サイトにアクセスしないように気を付けてください。
  • 信頼できる著名な Web サイトとサービスのみを利用してください。そういったサイトやサービスでは、脆弱性に速やかに対処する可能性が高いと思われます。
  • 銀行口座やクレジットカードの明細に注意して、不審な取引がないかどうかを確認してください。

 

2014 年 4 月 11 日更新:シマンテックの SSL Toolbox の Certificate Checker を使って、Web サイトがこの悪用に対して脆弱かどうかを確認することができます。以下の URL から Certificate Checker にアクセスできます。
https://ssltools.websecurity.symantec.com/checker/

Certificate Checker を使用するには、[Check your certificate installation]をクリックして Web サイトの URL を入力します。

heartbleed-explained_02.png

 

* 日本語版セキュリティレスポンスブログの RSS フィードを購読するには、http://www.symantec.com/connect/ja/item-feeds/blog/2261/feed/all/jaにアクセスしてください。


Viewing all articles
Browse latest Browse all 5094

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>