Endpoint Protection

 View Only

OpenSSL に「緊急」の脆弱性: 攻撃者がセキュア通信を傍受する恐れ 

Jul 10, 2015 03:08 AM

opensll_vulnerability-header-image.jpg

OpenSSL で新しい脆弱性が見つかりました。攻撃者がこれを悪用すると、偽のデジタル証明書を有効な証明書として受け入れるように標的のコンピュータを誘導し、セキュア通信を傍受できる恐れがあります。これは中間者(MITM)攻撃につながり、攻撃者はオンラインバンキングやメールといったセキュアなはずのサービスで接続を待ち受けることも可能になります。

OpenSSL は、暗号プロトコル SSL と TLS において普及率がきわめて高いオープンソース実装です。インターネットに接続するデバイスで広く使われており、Web サーバーについては普及率が 3 分の 2 に及びます。

新しく見つかった Alternative Chains Certificate Forgery Vulnerability(代替チェーンによる証明書偽造の脆弱性)(CVE-2015-1793)に対しては、OpenSSL プロジェクトから 7 月 9 日にリリースされたセキュリティ更新でパッチが公開されています。これは、OpenSSL における証明書の検証プロセスに関係する脆弱性です。SSL 証明書はチェーンで発行され、ルート認証局(CA)から中間 CA を経てエンドユーザーの証明書へとたどり着きます(この最後をリーフ証明書と呼ぶ)。信頼できる CA によって発行された証明書かどうかを接続元デバイスで確認できない場合には、信頼できる CA が見つかるまで、もう一度チェーンを上にたどります。それでも確認されない場合にはエラーメッセージが返され、セキュア接続は拒否されます。

証明書チェーンを確立しようとして失敗すると、OpenSSL は別のチェーンを探そうとします。今回の脆弱性は、このプロセスの実装エラーに原因があり、これを利用すると攻撃者は信頼できない CA に対するチェックをすり抜けることができます。攻撃者は有効なリーフ証明書を使って CA に偽装し、無効な証明書を発行できることになり、標的となったシステムはこれを信頼できる証明書として受け入れてしまいます。

チェーンの検証は、Web ブラウザやメールサーバーなど、SSL/TLS クライアントソフトウェアによって実行されるのが一般的です。一部の Web サーバーは、クライアントの証明書を認証することによって、サイト訪問者を認証するように設定されています。こうした Web サーバーで、証明書チェーンの検証に使われる OpenSSL が該当のバージョンだった場合には、今回の脆弱性の影響を受けることになります。サイト訪問者を認証しないサーバー、またはパスワードなど他の手段でサイト訪問者を認証するサーバーは、該当するバージョンの OpenSSL を使っていても影響を受けません。

この脆弱性の影響を受けるのは、OpenSSL のバージョン 1.0.2c、1.0.2b、1.0.1n、1.0.1o です。バージョン 1.0.2b と 1.0.2c を使っている場合は、ただちに 1.0.2d にアップグレードしてください。バージョン 1.0.1n と 1.0.1o を使っている場合は、ただちに 1.0.1p にアップグレードしてください。

今回見つかったのは、過去 1 年半の間に SSL/TLS で次々と確認された深刻な問題の最新の脆弱性です。最も有名なバグは Heartbleed、すなわち OpenSSL TLS 'heartbeat' Extension Information Disclosure Vulnerability(OpenSSL TLS の 'Heartbeat' 拡張機能に存在する情報漏えいの脆弱性)(CVE-2014-0160)で、独自のロゴまで登場しました。Heartbleed が 発見されたのは 2014 年 4 月です。攻撃者はソフトウェアの Heartbeat コンポーネントに存在する弱点を悪用することによってセキュア通信を傍受し、ログイン情報や個人データ、さらには暗号鍵といった機密情報を盗み出すことができました。

Heartbleed に続いて、2014 年 10 月には POODLE という脆弱性も見つかりました。POODLEは、公式には SSL Man In The Middle Information Disclosure Vulnerability(SSL における中間者による情報漏えいの脆弱性)(CVE-2014-3566)と呼ばれ、先ごろ非推奨となった古いバージョンの SSL(3.0)がその影響を受けました。SSL 3.0 が導入されたのは 1996 年のことで、それ以降は後続のプロトコルである TLS のみが新しいバージョンを重ねています。にもかかわらず POODLE の悪用が成立したのは、ほとんどの Web ブラウザと多くの Web サーバーが依然として SSL 3.0 のサポートを続けていたためでした。攻撃者は、強制的にセキュア接続を確立し、SSL 3.0 にダウングレードしてから POODLE 脆弱性を悪用できる可能性があるのです。

今年の 3 月はじめには、FREAK という脆弱性が発見されました。FREAK は SSL/TLS に影響し、悪用に成功すると攻撃者は狙ったクライアントとサーバーとの間の通信を傍受して暗号化することができます。公式な名称は OpenSSL Man in the Middle Security Bypass Vulnerability(OpenSSL における中間者によるセキュリティ回避の脆弱性)(CVE-2015-0204)といい、Freak を悪用すると、強制的に輸出向けの暗号化を使ってセキュア接続に対する MITM 攻撃者を仕掛けることが可能になります。輸出向けの暗号化は、暗号としてはかなり弱いため、クラッキングが容易だからです。輸出向けの暗号化は、現在は使われていません。

FREAK の直後には、OpenSSL Denial of Service Vulnerability(OpenSSL に存在するサービス拒否の脆弱性)(CVE-2015-0291)に対して 2015 年 3 月にパッチが公開されました。この脆弱性を悪用すると、攻撃者は影響を受けるパッチ未適用のサーバーに対してサービス拒否(DoS)を実行できる恐れがありました。

そして今年の 5 月には SSL/TLS Logjam Man in the Middle Security Bypass Vulnerability(SSL/TLS Logjam における中間者によるセキュリティ回避の脆弱性)(CVE-2015-4000)が発見され、パッチが公開されています。Logjam 脆弱性にパッチを適用しないでおくと、攻撃者はセキュア通信の開始時に起きるセッション鍵交換のメカニズムに存在する弱点を悪用できる可能性がありました。交換されるセッション鍵を保護するために、共有の、多くは固定(512 ビット)の素数を使っている実装が多く、SSL/TLS セッション中にデータを暗号化するときのセッション鍵を簡単に見つけられるからです。

対処方法

  • これは OpenSSL の脆弱性であり、SSL/TLS プロトコルやシマンテックが発行する証明書の欠陥ではありません。
  • OpenSSL 1.0.1 から 1.0.2 を使っている場合には、可能な限り、最新のバージョンに更新してください。バージョン 1.0.0 と 0.9.8 の OpenSSL は、この脆弱性の影響を受けません。
  • これ以外にも OpenSSL を使っているソフトウェアパッケージは多いため、パッチを適用したバージョンの OpenSSL をベンダーが製品に組み込んだら、速やかにパッケージを更新する必要があります。

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

【参考訳】

Statistics
0 Favorited
4 Views
0 Files
0 Shares
0 Downloads

Tags and Keywords

Related Entries and Links

No Related Resource entered.