ブラウザのセキュリティおよび混在コンテンツ

Google ChromeおよびMozilla FireFoxでは、混在コンテンツのブロックプロセスが実装されました。これにより、セキュリティ保護されたページの参照先であるセキュリティ保護されていないコンテンツを経由したセキュリティ攻撃から、コンピュータが保護されるようになりました。


混在コンテンツとは何か、および混在コンテンツが問題となる理由

ユーザ名やパスワードなどの機密情報の入力を要求するWebサイトの多くは、セキュリティ保護された (https) 接続を使用して、ユーザのコンピュータとの間でコンテンツを送受信します。セキュリティ保護された接続でサイトにアクセスしている場合、Google ChromeおよびFirefoxでは、Webページ上のコンテンツが安全に送信されたかどうかが検証されます。どちらのブラウザでも、セキュリティ保護されていない (http) チャンネルから送信された特定のタイプのコンテンツをページ上で検出すると、自動的にコンテンツのロードを停止し、アドレスバーに盾のアイコンを表示します。

コンテンツおよび可能性のあるセキュリティの欠陥をブロックすることにより、ChromeおよびFirefoxは、ページ上の情報が悪意のあるユーザに渡らないよう保護します。


混在コンテンツのタイプ

ユーザのWebページ表示に影響する混在コンテンツには2つのタイプがあり、さまざまなレベルのリスクがあります。

  • 混在パッシブコンテンツまたは表示コンテンツ
  • 混在アクティブコンテンツまたはスクリプトコンテンツ

混在パッシブコンテンツまたは表示コンテンツ

混在パッシブコンテンツは、Webページのドキュメントオブジェクトモデル (DOM) を変更できない、HTTPS Webサイト上のHTTPコンテンツです。簡単に言うと、パッシブなHTTPコンテンツのHTTPS Webサイトへの影響は限定的であるということです。たとえば、HTTPで送信された画像が、攻撃者によって不適切な画像や誤解を招くメッセージに入れ替えられる可能性があります。しかし、攻撃者はWebページのその他の部分に影響を及ぼすことはできません。影響を受けるのは、ページ内で画像がロードされたセクションに限られます。

攻撃者は、ユーザに表示されている画像を監視することで、ユーザに表示されているページを導き出し、ユーザのブラウジングアクティビティに関する情報を推測できます。また、画像をやり取りするために送信されたHTTPヘッダーを監視することにより、攻撃者はユーザエージェント文字列や、画像がリクエストされたドメインに関連付けられているクッキーを参照することもできます。メインのWebページと同じドメインからコンテンツが送信されている場合、ユーザアカウントに提供されているHTTPSのセキュリティ保護が回避され、セッション情報が漏えいする可能性があります。

パッシブなコンテンツには、画像、音声、動画のロードなどが挙げられます。

混在アクティブコンテンツまたはスクリプトコンテンツ

アクティブコンテンツは、HTTPSページのドキュメントオブジェクトモデル (DOM) の全部または一部にアクセスしたり影響を与えたりすることができるコンテンツです。このタイプの混在コンテンツは、HTTPSページの動作を改ざんできるだけでなく、ユーザの機密データを盗み出すこともできます。前述の混在パッシブコンテンツのリスクに加え、混在アクティブコンテンツは多方面からのさまざまな攻撃にもさらされます。

例:中間者 (MITM) 攻撃では、攻撃者はHTTPのアクティブコンテンツリクエストを傍受できます。そして、悪意のあるJavaScriptコードが組み込まれた応答を返します。悪意のあるスクリプトは、ユーザの資格情報を盗み出し、ユーザに関する機密データを取得したり、(ユーザがインストールした脆弱性のあるプラグインを利用するなどして) マルウェアをユーザのシステムにインストールしようとしたりします。

アクティブコンテンツには、JavaScript、CSS、オブジェクト、XHRリクエスト、iFrame、フォントなどが挙げられます。


ユーザによるブラウザ制御の不要化

ユーザエクスペリエンスを改善し、ユーザによるブラウザ設定の調整を不要にするには、すべてのコンテンツをHTTPS経由で送信する必要があります。


混在コンテンツのブラウザ管理

MozillaのWebサイトの例を確認すると、混在コンテンツがユーザの閲覧に与える影響を確認し、ブラウザの設定がページのレンダリングに与える影響を理解することができます。

混在コンテンツのブロックに対する考え方は、どのブラウザも似ています。混在コンテンツのブロックをサポートするブラウザ間での主な違いは、アクセス管理と情報のレベルです。

HTTPS経由で送信されるセキュリティ保護されたWebページには、セキュリティ保護されていないエレメントが含まれ、情報が攻撃を受けやすい可能性があります。セキュリティ保護されているエレメントとセキュリティ保護されていないエレメントの両方が含まれているページのことを、混在コンテンツと呼びます。

混在コンテンツと関連するリスクから保護するために、Mozilla Firefoxは、セキュリティ保護されていないコンテンツが違った形でセキュリティ保護されているページに表示される動作をブロックします。セキュリティ保護されていないエレメントを含んだページへの移動を受け入れる場合、数ステップでこのコンテンツを表示することができます。このページでは、Mozilla Firefoxブラウザ (v23以降) で混在コンテンツにアクセスする際のブラウザコントロールの管理方法について説明します。


ブロックするコンテンツの設定管理

Firefoxで混在コンテンツが含まれるページにアクセスすると、ロケーションバーに盾のアイコンが表示されます。これは、一部のコンテンツがブロックされていることを示します。盾のアイコンをクリックすると、セキュリティ機能を一時的に無効にしてセキュリティ保護されていないコンテンツを表示することができます。

このコンテンツを表示する場合は、[今すぐ保護を無効にする]を選択します。ページがリロードされ、2つのアイコンがロケーションバーに表示されます。1つは赤線が引かれた盾、もう1つは感嘆符が入った黄色の三角形です。これらのアイコンは、ページ上の一部のコンテンツがユーザの情報をリスクにさらす危険性があることを示しています。


Firefox : 混在コンテンツのブロック

Mozilla Firefoxは混在コンテンツのブロック機能を使用してユーザの情報を保護しますが、混在アクティブコンテンツを表示するかどうかを選択することもできます。このタイプのコンテンツは、ページ全体の動作を改ざんしたり、ユーザの重要なデータを盗み出す可能性があります。ただし、混在パッシブコンテンツが改ざんできるのは、HTTP (セキュリティで保護されていない) コンテンツ部分のみであり、ページ全体の動作を改ざんすることはできません。

混在パッシブコンテンツは通常はオンラインであり、画像、音声、動画などのWebページのエレメントを含んでいます。Firefoxは、このタイプのコンテンツを自動的にはブロックしません。理由は、それを行うとWebページのかなりの部分が崩れてしまい、ユーザエクスペリエンスを低下させるためです。しかしながら、ブラウザの設定を編集することで混在パッシブコンテンツをブロックすることができます。


さらに読む

混在コンテンツの詳細については、MozillaのWebサイトにある以下の記事を参照してください。