2014年11月2日日曜日

Webブラウザの暗号化処理「SSL 3.0」に不具合が発見!! ブラウザ毎の対策が必要

Webブラウザが、通信するデータを暗号化して通信する技術に「SSL 3.0」ありますが、この技術、18年前の技術で、最近、通信の一部が第三者に解読可能な不具合があると、発見されました。

そのため、Webブラウザがインターネットとの通信において、SSL 3.0 を使用している場合、通信の一部が第三者に漏えいする可能性があります。


インターネットで商品を購入するような場合、パスワードなどの重要なデータ入力の場合、このSSLという暗号化技術を使うことで、通信するデータを暗号化でき、通信するデータを漏えいしないよう(盗まれないよう)にできます。

しかし、今回発見された「SSL 3.0」の不具合は、暗号化された通信データが漏えいする(盗まれる)というもので、暗号化の意味が無くなる不具合です。

なお、SSL 3.0の次のバージョンから「TLS」(Transport Layer Security)に変更されたため、現在広く利用されているのは正確には「TLS」の方ですが、いまだに、インターネットのコンピュータには、データ通信の暗号化に「SSL 3.0」を使っているものもあります。

下記の「IPA 独立行政法人 情報処理推進機構」の記事に詳しい内容が書かれていますが、
この記事を参考に、私が実施した対策を、簡単に紹介します。



 更新:SSL 3.0 の脆弱性対策について(CVE-2014-3566):IPA
 https://www.ipa.go.jp/security/announce/20141017-ssl.html




■ 「SSL 3.0」不具合の対策概要


対策は、インターネット側のコンピュータ(サーバー)で実施する場合と、パソコン側(クライアント)で実施する場合と二通りあります。


もし、パソコン側(クライアント)で実施する場合は、利用者の方で、現在、使用している全ブラウザで、「SSL 3.0」を無効化する必要があります。

なお、SSL 3.0 を無効化することで次の影響を受ける可能性があります。

 自分のパソコン(クライアント側)で SSL 3.0 を無効にした場合
  一部のサーバに接続できなくなる可能性があります。

 インターネットのコンピュータ(サーバ側)で SSL 3.0 を無効にした場合
  一部のクライアントから接続ができなくなる可能性があります。
 


■ 主なブラウザでの対策  (注)2014.11.2現在の対策です



■Internet Explorerの対策

設定を変更することにより、SSL3.0を無効化することができます。詳しくは、下記URLのマイクロソフト セキュリティアドバイザリを参照してください。

私は、”Internet Explorer11”を使っていますが、 [ツール] メニューの [インターネット オプション] で、[SSL 3.0 を使用する] チェック ボックスをオフにし、[TLS 1.0 を使用する]、[TLS 1.1 の使用]、および [TLS 1.2 の使用] チェック ボックスをオンにしました。詳しくは下記を参照下さい。

 マイクロソフト セキュリティ アドバイザリ 3009008
 https://technet.microsoft.com/ja-jp/library/security/3009008.aspx


■ Firefoxの対策

Firefox は、次期バージョンからデフォルトで SSL 3.0 を無効化すると発表しています。

なお、現行バージョンの Firefox で SSL 3.0 を無効化するアドオンが公開されています。私は、このアドオンを導入しました。

 Mozilla Japan ブログ
 http://www.mozilla.jp/blog/entry/10433/


■Chromeの対策

現時点で Google 社からは SSL 3.0 を無効化する方法は公開されていませんが、数ヵ月後には SSL 3.0 のサポートを完全に打ち切る予定であると発表しています。私は、Chromeブラウザは、通常、使ってないので、バージョンアップされるまで待つことにしました。

 This POODLE bites: exploiting the SSL 3.0 fallback(English)
 http://googleonlinesecurity.blogspot.jp/2014/10/this-poodle-bites-exploiting-ssl-30.html


≪補足≫SSL 【 Secure Sockets Layer 】

インターネットなどのTCP/IPネットワークでデータを暗号化して送受信するプロトコル(通信手順)の一つ。データを送受信する一対の機器間で通信を暗号化し、中継装置などネットワーク上の他の機器による成りすましやデータの盗み見、改竄などを防ぐことができる。

≪補足≫TLS 【 Transport Layer Security 】

元はSSL(Secure Socket Layer)と呼ばれるプロトコルで、SSL 3.0の次のバージョンがTLS 1.0という関係(機能的にはほぼ同じ)にある。