Как я могу ограничить запуск плагина Java только на определенных сайтах в Internet Explorer?

10

Я хочу лучше защитить наши централизованно управляемые компьютеры, и очень сложно автоматически развернуть среду выполнения Java, но как это сделать - другой вопрос.

Я считаю безопасность Java катастрофической, даже если она полностью исправлена: похоже, что если пользователь скажет «да» на невинный вопрос «Доверяете ли вы этому сертификату», java может делать все, что захочет. Java webstart также кажется универсальной точкой входа для авторов вредоносных программ.

В общем, я не забочусь о том, чтобы мои пользователи играли в браузерные игры и т. Д. Java-апплеты все равно вымерли.

Но осталась одна страница (торговая система Ingramm Micro), которая опирается на Java.

Кто-нибудь знает простой способ настроить IE или Java с помощью групповой политики, чтобы разрешить только плагины Java на определенных предварительно настроенных сайтах?

Спасибо!

Кристиан
источник
Oracle обеспечивает JRE как MSI, что делает развертывание / обновления довольно простыми.
Jscott

Ответы:

12

Отличный вопрос. По иронии судьбы, именно эта функциональность была представлена ​​в более ранней версии Microsoft JVM (10 лет назад).

Управление Java в Internet Explorer
https://blogs.msdn.com/b/ieinternals/archive/2011/05/15/controlling-java-in-internet-explorer.aspx

В последнее время возник интерес к тому, как контролировать использование Java в Internet Explorer. Java является уникальной формой расширяемости, потому что она может быть вызвана двумя способами:

  • Использование элемента APPLET
  • Использование элемента OBJECT с CLSID JVM

Эти два метода вызова подчиняются различным мерам безопасности, которые я опишу в сегодняшнем посте.

Управление тегами апплета

Когда Internet Explorer обнаруживает тег APPLET, он проверяет значение URLACTION_JAVA_PERMISSIONS, чтобы определить, должен ли загружаться APPLET. Если значением является URL_POLICY_JAVA_PROHIBIT, то тегу APPLET запрещается загружать JVM. В более ранних версиях Internet Explorer, когда была доступна Microsoft JVM, это действие URLAction отображалось в диалоговом окне «Инструменты> Свойства обозревателя> Безопасность> Пользовательские…», но с тех пор оно было удалено.

Редактор групповой политики можно использовать для управления действием URLAction в узле \ Административные шаблоны \ Компоненты Windows \ Internet Explorer \ Панель управления Интернетом \ Страница безопасности \ ZoneID:

введите описание изображения здесь

Кроме того, вы можете сделать небольшую настройку реестра, чтобы добавить запись параметров JVM обратно в панель управления Интернетом:

введите описание изображения здесь

Сценарий реестра использует тот факт, что интерфейс панели управления Интернетом можно расширить с помощью реестра; он просто создает новый элемент, который корректирует значения URLAction URLACTION_JAVA_PERMISSIONS.

Если для параметра «Зона Интернета» установить значение «Высокий уровень безопасности» на «Отключить» (URL_POLICY_JAVA_PROHIBIT), любой сайт, пытающийся использовать тег APPLET, обнаружит, что апплет не загружается, и отобразится уведомление:

введите описание изображения здесь

Управление тегами объектов

К сожалению, когда сайт использует тег OBJECT для загрузки Java, выполняется совершенно другой путь кода. В случае тега OBJECT, URLAction JAVA_PERMISSIONS не используется, потому что для Internet Explorer это может быть OBJECT любого типа. Вместо этого используются традиционные функции управления ActiveX (например, фильтрация ActiveX, ActiveX для отдельных сайтов, управление надстройками и т. Д.). Вы можете использовать IE Инструменты> Управление надстройками, чтобы проверить или отрегулировать состояние объекта Плагина Java:

введите описание изображения здесь

Примечание. Мне сообщили, что объект Java Plug-In SSV Helper Browser Helper не следует отключать, поскольку он гарантирует, что веб-сайты не могут пытаться загрузить более старые (небезопасные) версии JVM, которые вы, возможно, установили. Однако вы заметите, что платите штраф за производительность при запуске вкладки, чтобы загрузить это BHO - это одна из многих причин, по которым я не устанавливаю Java на своих ПК.

Если вы выберете Плагин Java, вы можете нажать кнопку Отключить , чтобы запретить загрузку Java тегом OBJECT. В качестве альтернативы, если вы нажмете ссылку « Дополнительная информация» , вы можете удалить * из списка сайтов, на которых может работать плагин Java:

введите описание изображения здесь

Если вы впоследствии посетите сайт, который пытается вызвать Java в качестве тега OBJECT, вы увидите панель уведомлений, запрашивающую разрешение на запуск Java на текущем сайте.

Итак, если вы хотите разрешить запуск Java только в зонах интрасети и доверенных сайтов:

  1. Настройте действие URLAction для зоны Интернета, чтобы отключить
  2. Удалите * из списка для каждого элемента управления ActiveX

Шаг # 1 гарантирует, что только сайты зоны интрасети и доверенной зоны могут загружать Java для тегов APPLET. Шаг № 2 гарантирует, что Плагин Java не будет загружаться как ОБЪЕКТ на сайтах зоны Интернета; вместо этого будет показано уведомление. Поскольку интрасеть и доверенные сайты игнорируют список ActiveX для отдельных сайтов, вы не увидите никаких дополнительных предупреждений на этих сайтах.

Грег Аскью
источник
Отличный ответ, Грег. Шаг 1 можно выполнить с помощью групповой политики. Это также относится и к шагу 2?
Я сделал быструю проверку в таблице настроек gpo и не увидел ее. Вы можете сделать сравнение реестра до и после изменения параметра и создать собственный шаблон adm для него.
Грег Аскью
Я отмечу пару замечаний, которые могут представлять интерес для управления Java через GPO (но я еще не полностью выполнил): darkoperator.com/blog/2013/1/14/… и его предшественник darkoperator.com/blog /
2013/1/12