web-dev-qa-db-ja.com

JavaプラグインをInternet Explorerの特定のサイトでのみ実行するように制限するにはどうすればよいですか?

集中管理されているコンピューターのセキュリティを強化したいのですが、Javaランタイムを自動的に展開するのは非常に困難ですが、その方法は別の質問です。

Javaパッチが完全に適用されていても破滅的です:ユーザーが無害な質問「この証明書を信頼しますか」に対して「はい」と言った場合、Javaは何でも好きなことができますJava webstartもマルウェア作成者にとっての普遍的なエントリポイントのようです。

一般的に、ブラウザゲームをプレイしているユーザーを気にしません。Javaアプレットはとにかく絶滅しているようです。

しかし、Javaに依存するページが1つ残っています(Ingramm Microショッピングシステム)。

IEまたはJavaグループポリシーを介してJavaプラグインを特定の事前構成済みのものにのみ許可することを許可する簡単な方法を知っていますか?サイト?

ありがとう!

10
Christian

すばらしい質問です。皮肉なことに、この機能そのものは古いMicrosoft JVM(10年前)で公開されていました。

制御Java
https://blogs.msdn.com/b/ieinternals/archive/2011/05/15/controlling-Java-in-internet-Explorer.aspx

最近、Internet Explorer内でJavaの使用を制御する方法にいくつかの関心が寄せられています。Javaは、2つの方法で呼び出すことができるため、拡張性のユニークな形式です。方法:

これら2つの呼び出し方法は、今日の投稿で説明するように、異なるセキュリティ制御の影響を受けます。

アプレットタグの制御

Internet Explorerは、APPLETタグを検出すると、URLACTION_Java_PERMISSIONS値をチェックして、APPLETをロードする必要があるかどうかを判断します。値がURL_POLICY_Java_PROHIBITの場合、APPLETタグはJVMをロードできません。以前のバージョンのInternet Explorerでは、Microsoft JVMが使用可能な場合、このURLActionは[ツール]> [インターネットオプション]> [セキュリティ]> [カスタム…]ダイアログで公開されていましたが、その後削除されました。

グループポリシーエディターを使用して、ノード\管理用テンプレート\ Windowsコンポーネント\ Internet Explorer \インターネットコントロールパネル\セキュリティページ\ゾーンIDでURLActionを制御できます。

enter image description here

または、小さなレジストリTweakを作成して、 JVMオプションエントリを追加 してインターネットコントロールパネルに戻すこともできます。

enter image description here

レジストリスクリプトは、インターネットコントロールパネルのUIがレジストリを介して拡張可能であるという事実を利用しています。 URLACTION_Java_PERMISSIONS URLActionの値を調整する新しいアイテムを作成するだけです。

インターネットゾーンの設定を「高セキュリティ」から無効(URL_POLICY_Java_PROHIBIT)に調整すると、APPLETタグを使用しようとするサイトでアプレットが読み込まれず、通知が表示されます。

enter image description here

オブジェクトタグの制御

残念ながら、サイトがOBJECTタグを使用してJavaをロードすると、まったく異なるコードパスが実行されます。 OBJECTタグの場合、Java_PERMISSIONS URLActionは参照されません。これは、Internet Explorerに関する限り、これは任意のタイプのOBJECTである可能性があるためです。代わりに、 従来のActiveXコントロール機能 が参照されます(ActiveXフィルタリング、サイトごとのActiveX、アドオンの管理など)。 IEの[ツール]> [アドオンの管理]機能を使用して、Javaプラグインオブジェクトの状態を確認または調整できます:

enter image description here

注:Java Plug-In SSV Helper Browser Helperオブジェクトは無効にしないでください。これにより、Webサイトが古い(安全でない)バージョンのJVMをロードできない可能性があるためです。がインストールされている可能性がありますが、このBHOをロードするためにタブの起動時にパフォーマンスペナルティを支払うことに気付くでしょう。これは、私がPCにインストールしない多くの理由の1つですJava.

Javaプラグインを選択した場合、DisableボタンをクリックしてJava OBJECTタグによって読み込まれないようにするか、詳細情報リンクをクリックすると、サイトのリストから*をクリアできますJavaプラグインを実行できる場所:

enter image description here

その後、JavaをOBJECTタグとして呼び出そうとするサイトにアクセスすると、現在のバージョンでJavaを実行する許可を求める通知バーが表示されます地点。

したがって、Javaをイントラネットゾーンと信頼済み​​サイトゾーンでのみ実行することを許可する場合:

  1. インターネットゾーンのURLActionを無効に調整します。
  2. ActiveXコントロールのサイトごとのリストから*を削除します。

ステップ#1では、イントラネットゾーンと信頼済み​​ゾーンのサイトのみがJava APPLETタグの場合)をロードできるようにします。ステップ#2では、Javaプラグインがインターネットゾーンサイトではオブジェクトとして読み込まれません。代わりに通知が表示されます。イントラネットおよび信頼済みサイトはサイトごとのActiveXリストを無視するため、これらのサイトでは追加の警告は表示されません。

12
Greg Askew