Last modified: Fri May 25 16:08:05 2007 +0900 (JST)
注意: 以下の記述は IE 5.01 時代のもので、きちんとメンテナンスされていない。 IE 6.0 に対応した記事としては、たとえば @IT の IEのセキュリティ設定を変更してセキュリティ機能を強化する や クライアントが危ない IEのセキュリティ設定 (日経 BizTech) がある。IE 6.0 では一部のデフォルト値が変更されている (IE 5.5 以前よりも安全になった) ことに注意されたい。 さらに、MS02-023 以降の IE 用累積 patch を適用すると、制限つきサイトゾーンにおける frame / IFRAME の利用が禁止され、安全性が高まる。
このページの内容は、いかなる意味においても保証できないことを警告しておく。 このページの内容に基く設定を行う場合は、行う者の自己責任において実行されたい。 なお、以下における MSIE はバージョン 5.01 を前提としている。
このページの内容は、今となっては驚くほど不完全なので、そのつもりで参照するように。
MSIE のデフォルト設定では、各ゾーンに対するセキュリティレベルは次のように設定されている。
| ゾーン | セキュリティのレベル |
|---|---|
| インターネット | 中 |
| イントラネット | 中低 |
| 信頼済みサイト | 低 |
| 制限付きサイト | 高 |
そもそもこれらゾーンがいったい何を意味するのかについては MSIE のヘルプ (キーワード「セキュリティ」「ゾーン」あたり) を参照されたい。 このうちイントラネットゾーンについてはヘルプの説明では誤解しやすい。 JWNTUG Newsletter に 「ローカル イントラネット ゾーン とは何か?」 という記事を書いたので、これを参照されたい。
各レベルにおける設定詳細は次のようになっている:
| 設定項目 | セキュリティのレベル | ||||
|---|---|---|---|---|---|
| 高 | 中 | 中低 | 低 | ||
| ActiveX コントロールとプラグイン | ActuveX コントロールとプラグインの実行 | 無効 | 有効 | 有効 | 有効 |
| スクリプトを実行しても安全だとマークされていない ActiveX コントロールの初期化とスクリプトの実行 | 無効 | 無効 | 無効 | ダイアログ | |
| スクリプトを実行しても安全だとマークされている ActiveX コントロールのスクリプトの実行 | 有効 | 有効 | 有効 | 有効 | |
| 無効 | 有効 | 有効 | 有効 | ||
| 署名済み ActiveX コントロールのダウンロード | 無効 | ダイアログ | ダイアログ | 有効 | |
| 未署名の ActiveX コントロールのダウンロード | 無効 | 無効 | 無効 | ダイアログ | |
| Cookie | コンピュータに保存されている Cookie の使用許可 | 無効 | 有効 | 有効 | 有効 |
| セッションごとの Cookie の使用許可 (保存なし) | 無効 | 有効 | 有効 | 有効 | |
| Microsoft VM | Java の使用許可 | 安全性 - 高 | 安全性 - 高 | 安全性 - 中 | 安全性 - 低 |
| 無効 | 安全性 - 高 | 安全性 - 中 | 安全性 - 低 | ||
| スクリプト | Java アプレットのスクリプト | 無効 | 有効 | 有効 | 有効 |
| アクティブ スクリプト | 有効 | 有効 | 有効 | 有効 | |
| スクリプトによる貼り付け処理の許可 | 無効 | 有効 | 有効 | 有効 | |
| その他 | IFRANE のプログラムとファイルの起動 | 無効 | ダイアログ | ダイアログ | 有効 |
| UserData の常設 | 無効 | 有効 | 有効 | 有効 | |
| ソフトウェア チャンネルの許可 | 安全性 - 高 | 安全性 - 中 | 安全性 - 中 | 安全性 - 低 | |
| デスクトップ項目のインストール | 無効 | ダイアログ | ダイアログ | 有効 | |
| ドメインの異なるサブフレーム間の移動 | 無効 | 有効 | 有効 | 有効 | |
| ドメイン間でのデータソースのアクセス | 無効 | 無効 | ダイアログ | 有効 | |
| ファイルのドラッグ/ドロップ、またはコピー/貼り付け | ダイアログ | 有効 | 有効 | 有効 | |
| 暗号化されていないフォームデータの送信 | ダイアログ | ダイアログ | 有効 | 有効 | |
| ダウンロード | ファイルのダウンロード | 無効 | 有効 | 有効 | 有効 |
| フォントのダウンロード | ダイアログ | 有効 | 有効 | 有効 | |
| ユーザ認証 | ログオン | ユーザ名とパスワードを入力 | イントラネットゾーンでのみ自動ログオン | イントラネットゾーンでのみ自動ログオン | 現在のユーザ名とパスワードで自動ログオン |
ここで注目したいのは、セキュリティレベルを「高」にしても、 「スクリプトを実行しても安全だとマークされている ActiveX コントロールのスクリプトの実行」と「アクティブ スクリプト」は有効になっている点だ。 これまでにも、「スクリプトを実行しても安全だとマークされている ActiveX コントロールのスクリプト」に buffer overflow する弱点などが複数発見されているし、「アクティブ スクリプト」に至っては非常に多くの弱点が発見されている。 これらの実行を許可していたのでは、高いセキュリティレベルを設定しているとは言えない。 開発元である Microsoft がこれら技術 (ActiveX、アクティブ スクリプト) を多用しているためこのようになっているのだろうが、現実問題として不安全なものは不安全だとみなすべきである。
いづれの設定においても Java VM の使用が許可されている点にも注意が必要だ。 高いセキュリティレベルを設定するというなら Java VM の使用は無効にすべきだろう。 また、 IE 5 security vulnerablity - circumventing Cross-frame security policy using Java/JavaScript (and disabling Active Scripting is not that easy) で指摘 ([JavaHouse-Brewers:32588] Re: IE 5 security vulnerablity - circumventing Cross-frame security policy using Java/JavaScript で解説) されているように、Java アプレットから JavaScript を操作することができるため、 現実問題として Java の許可はすなわち JavaScript の許可となってしまう。
FIXME - 各項目詳説、推奨設定、一発設定のための .reg ファイル提示。
謎 (どなたかおしえてください):
「Java アプレットのスクリプト」とは何なのか?
Java なものには「Java アプリケーション」と「Java アプレット」があると思っていたが、 さらに「Java アプレットのスクリプト」というものがあるのか? (Java が全然わかってないので変な事を書いている可能性が高い……)
→ 高木さんからご教示いただきました。ありがとうございます。
「Javaアプレットのスクリプト」とは、 JavaアプレットのメソッドをJavaScriptから呼ぶ機能です。 つまり、public class FooApplet extends java.applet.Applet { public void myMethod() { ... } }という内容のJavaアプレットがHTMLページに貼り付けられているとき、 そのHTMLページ上のJavaScriptで、document.applets[0].myMethod()とすると、(そのページ上の0番目のアプレットの) myMethod() メソッドが Java VM上で起動されるというもののようです。
(MSの独自拡張のようですが、Java的にはかなり変。 静的な型というものを無視している。)
2001.06.08 追記: MS 独自のものではないそうです。 参照: [memo:9] MSIE のセキュリティ設定について。
「ソフトウェア チャンネルの許可」とは何なのか?
そもそもソフトウェアチャンネルとは何か? 安全性の高中低は何がどのように異なるのか?
「Java の使用許可」の安全性設定 (高中低) はリーズナブルなものなのだろうか?
たとえば、Java な人から見て、安全性 - 高で設定されている詳細は「安全性 - 高」だと言えるのだろうか?
2001.06.08 追記: 高木氏によるコメントが投稿されている: [memo:10] Re: MSIE のセキュリティ設定について。
J052981, [IE4] セキュリティ ゾーンのレジストリ エントリについて
IE 4/5 におけるレジストリ値の詳細の解説。必読。
評価できてない (^^;)
MS による、Java, JavaScript, Active X などの 「モバイルコード」 と、web ブラウザや MUA のセキュリティに関する説明。