Андрей Смирнов
Время чтения: ~11 мин.
Просмотров: 0

Автоматическое обновление Adobe Flash Player & Java RE в домене Windows/AD

Компания Adobe,  идя навстречу администраторам и пользователям, начиная с версии 11.2 внедрила функцию автоматического обновления Adobe Flash Player. Казалось бы, это отличная новость, но чтобы заставить автообновление работать в реальных условиях необходимо приложить ряд усилий. Идея с автоматизацией обновления Flash плеера заключается в том, что компьютеры должны автоматически обновлять версию Flash Player до  актуальной без необходимости предоставления пользователям расширенных прав. Кроме того, если на компьютере запущен браузер, то flash будет обновлен только после того, как браузер будет закрыт.

image014.png

Как же все это работает?

Автоматическое обновление работает следующим образом:

  • На компьютере должна быть установлена версия Adobe Flash не ниже 11.2.x
  • При установке создается новое задание планировщика, которое запускается ежедневно, проверяющее наличие обновлений. Задание планировщика запускается с правами системы (SYSTEM). Если найдено новое обновление, оно скачивается, удаляется старая версию Flash и ставится новая.
  • Если компьютер не имеет доступа к интернету, задание запускается раз в час, проверяя наличие подключения к интернету.

adobe_flash_update.jpg

Некоторые детали

Задание планировщика:

  • Называется ‘Adobe Flash Player Updater
  • Запускается от SYSTEM
  • Запускает приложение C:WindowsSysWOW64MacromedFlashFlashPlayerUpdateService.exe
  • Настроено на ежедневый запуск, с последующим перезапуском каждый час до момента обнаружения соединения с интернетом

Установщик создает отдельную службу:

  • Имя службы ‘AdobeFlashPlayerUpdateSvc’ (Adobe Flash Player Update Service)
  • Тип запуска – ручной (Manual)
  • Запускается с правами системы
  • Исполняемый файл  =C:WindowsSysWOW64MacromedFlashFlashPlayerUpdateService.exe

В корпоративной среде использование автоматическое обновления Flash Player вызывает ряд проблем, наиболее распространенной из которых является проблема использования прокси-сервера (по этому поводу на форумах очень много  дискуссий). Проблема в том, что задание автоматического обновления с сервера Adobe запускается с правами SYSTEM, который ничего не знает о наличии прокси сервера в сети, его адресе и номере порта (подробнее о настройке системного проски в Windows здесь). И даже если с помощью утилиты proxycfg.exe измените настройки прокси-сервера, то если прокси сервер настроен на авторизацию по учетным записям, то в этом случае автоматическое обновление работать не будет.

Отключение автоматического обновления Adobe Flash Player

Автоматическое обновление Flash Player можно отключить. Для этого нам нужно создать и настроить параметр в специальном файле mms.cfg. Т.к. начиная с Adobe Flash 11 данный пакет поставляется в двух реализациях 32-битной и 64-битной, то данный файл может находится в разных каталогах:

  • В 32-битной Windows: %systemroot%System32MacromedFlash
  • В 64-битной Windows 32битный Flash: %systemroot%SysWOW64MacromedFlash
  • В 64-битной Windows 64битный Flash: %systemroot%System32MacromedFlash

Определяем версию Windows и Flash и переходим в соответствующий каталог. Создадим в нем файл MMS.CFG в кодировке UTF-8, содержащий одну строку: AutoUpdateDisable=1.

Тем самым мы отключим автоматическое обновление Flash Player-а, и никакие всплывающие сообщения о необходимости обновить Flash появляться не будут (не забудьте перезапустить флеш). Для проверки отключения обновления идём Пуск — Панель управления — Flash-плеер — вкладка «Дополнительно». Если вы всё сделали правильно, то строка «Никогда не проверять обновления» должна стать неактивной.

Отключить автоматическое обновление Flash можно и с помощью групповой политики, скопировав файл MMS.CFG на нужные компьютеры с помощью vbs скрипта. Для этого создадим файл, отключающий обновление флеша по указанной выше методике и разместим его в сетевом каталоге. Далее назначим выполнение следующего logon-скрипта на целевые компьютеры:

Set obFSO = CreateObject("Scripting.FileSystemObject")  strNetworkFlashPath = \srv1ShareAdobe Flashmms.cfg"  strLocalFlashPath = "C:WINDOWSSystem32MacromedFlashmms.cfg"  If obFSO.FolderExists ("C:WINDOWSSystem32MacromedFlash") Then  obFSO.CopyFile strNetworkFlashPath, strLocalFlashPath, True  End If  Set obFSO = Nothing

Данный скрипт проверяет наличие каталога  C:WINDOWSSystem32MacromedFlash и копирует файл mms.cfg из сетевой шары.

Как вариант, отключить обновление Flash Player можно и с помощью GP Preferences, создав задание на копирование файла (Computer Configuration -> Preferences -> Windows Settings -> Files).

Описал еще один интересный аспект касательный Flash Player, заключающейся в сложности ручного удалением файлов Flash -а.

Обзор

Новейшие версии Adobe Flash Player для платформ Windows и Mac OS могут регулярно проверять и устанавливать обновления. Необходимо всегда устанавливать последнюю версию Adobe Flash Player, чтобы предотвратить возникновение проблем безопасности.

Изменение настроек обновления

Вкладка «Дополнительно» (Windows) Вкладка «Дополнительно» (Mac OS)

В Windows изменить настройки также можно на Панели управления. Дважды щелкните Flash Player, нажмите вкладку «Дополнительно» и выберите параметр в пункте «Обновления».

В Mac OS перейдите в раздел «Системные настройки» и дважды щелкните значок Flash Player.

Изменение параметров обновлений

В выпуске Flash Player 11.3 изменились параметры обновлений.

Разрешить Adobe устанавливать обновления (рекомендуется)

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

Срочные обновления для системы безопасности устанавливаются автоматически без уведомлений.

Перед автоматической установкой запланированных обновлений Adobe пытается вас уведомить. Запланированные обновления могут содержать улучшения и несрочные обновления для системы безопасности. Также можно загрузить запланированные обновления незамедлительно с сайта Adobe.com и установить их, не ожидая автоматической установки.

Уведомлять о необходимости установки обновлений

Adobe Flash Player регулярно проверяет наличие обновлений и уведомляет вас, когда обновление доступно. Обновления устанавливаются только с вашего согласия.

Не проверять наличие обновлений (не рекомендуется)

Использовать этот параметр не рекомендуется. Adobe Flash Player никогда не проверяет наличие обновлений, таким образом, ваша система уязвима перед проблемами безопасности. Чтобы найти последнюю версию Flash Player, вам потребуется самостоятельно проверять данные на веб-сайте Adobe.

Последние изменения

Чтобы узнать о новых возможностях и последних изменениях Flash Player, щелкните эту ссылку.

Защита

Чтобы узнать о последних исправлениях системы безопасности Flash Player, щелкните эту ссылку.

CC.png  На посты, размещаемые в Twitter™ и Facebook, условия Creative Commons не распространяются.

Правовые уведомления   |   Политика конфиденциальности в сети Интернет

Привет! Выложил на гитхаб VBS скрипт, который уже больше года поддерживает актуальность установленных версий Java&Flash на компьютерах пользователей в домене Windows( Active Directory), с минимальными усилиями со стороны администратора и минимальными неудобствами для пользователей. Почему пришлось изобретать велосипед и как пользоваться этим скриптом см. далее

intro

Не секрет, что одним из популярнейших направлений атак на компьютеры сегодня являются уязвимости Flash & Java, которые эксплуатируются при обычном посещении злонамеренных или взломанных сайтов (пример mysql.com в сентябре 2011 г) И хотя компании Adobe и Oracle уже внедрили механизмы авто-обновления в свои продукты, существенным их недостатком является сложность в настройке и эксплуатации. Чтобы использовать механизм автоматического обновления от Adobe придётся просмотреть 50-ти страничный Administration Guide и выполнить массу действий, а для установки обновления от Sun необходимо чтобы пользователь обладал правами локального администратора, что часто встречается у домашних пользователей и никогда в доменной сети хорошего администратора. Вопрос на serverfault.com “How do you manage Java in your Windows/Active Directory environment?” не получил чёткого ответа, лишь общие слова про использование скриптов и Group Policy, ручную пересборку MSI-пакетов, использование сторонних сервисов (ninite.com). Однако это всё требует постоянной ручной работы, а у хорошего админа всё должно происходить автоматически. Таким образом, поддержка актуальности установленных версий плагинов браузера перекладывается на плечи администратора и превращается в серьёзную задачу – надо отслеживать появление обновлений на сайтах производителей (это несложно делать с плановыми обновлениями, а ведь иногда появляются срочные – внеплановые), выкачивать и выкладывать в локальный репозиторий, создавать файлы установки (например MSI), следить за ходом развёртывания обновлений… Большие компании для этих целей используют большие продукты наподобие SCCM, средние — WSUS + Local Update Publisher(на хабре есть туториал про него от , а подсказал wiki, где все описано про java, flash, reader ), а мелкие просто пускают процесс на самотёк. Что интересно, по запросу «автоматическое обновление java» в гугле на первой странице половина ссылок сосредоточены на проблеме как отключить автоматическое обновление Java.

FJUpdater.vbs

Для тех, у кого уже есть AD, но еще нет WSUS (или есть WSUS, но нет временивозможностижелания заниматься ручной работой) я предлагаю FJUpdater.vbs. Это VBS скрипт, написанный 1.5 года тому назад, чтобы упростить себе жизнь и автоматизировать выполнение данной задачи. Скрипт проверяет актуальность установленных на компьютере версий Java&Flash (сравнивая с информацией с сайтов Sun & Adobe или локального репозитория), и, при необходимости, автоматически скачивает (через интернет(HTTP) или локальную сеть(SMB) соответственно) и устанавливает обновления. Запуск скрипта на компьютерах пользователей предлагается осуществлять через групповые политики (GPO) — параметр «Автозагрузка» раздела «Конфигурация компьютера». В этом случае обновления будут установлены с правами локального администратора при загрузке компьютера, тихо и незаметно для пользователя. Об ошибках и результатах своей деятельности может присылать отчёт на почту. Скрипт успешно трудится в 6-и не связанных друг с другом компаниях, входящих в зону мой ответственности, с числом пользователей от 10 до 300.

Общая схема установки и работы

1) Создаем сетевую папку, доступную на запись для учётной записи пользователя, от имени которого будет запускаться проверка обновлений в интернете, и на чтение для группы «Компьютеры домена» (Domain Computers). 2) Скачиваем скрипт, размещаем его, например, в папке NETLOGON на контроллере домена и редактируем раздел отправки почты и путь сохранения установщиков в константе csInstallerPath. 3) Выделяем какой-нибудь компьютер (например – виртуальную машину) с такой же ОС, как у пользователей. Данный компьютер будет контрольным «эталоном-индикатором» – с ним будут сравниваться версии плагинов через интернет. Поэтому, на нём должны быть установлены все плагины и настроена регулярная их проверка. Для этого первый запуск скрипта производим с ключом /WEBModeSaveInstallForce. Скачиваются актуальные версии установщиков и помещаются в локальную папку (csInstallerPath), а также генерируются файлы-флаги с номерами версий плагинов. После успешного получения, поочередно устанавливаем все плагины – запускаем java_installer.exe для Java, flashP_installer.exe для Flash Player Plugin (Firefox, Mozilla, Netscape, Opera) и flashA_installer.exe для Flash Player ActiveX (IE). «Родные» механизмы авто-обновлений следует отключить. Как это сделать для Java можно посмотреть на официальном сайте. В случае с Flash выбрать пункт «Никогда не проверять обновления». Вместо них, чтоб поддерживать актуальность компьютера-эталона и сетевого репозитория, настраиваем регулярный запуск скрипта с ключом /WEBModeSaveInstall:1 через планировщик задач или nncron. 4) В групповых политиках клиентских компьютеров, в разделе «Конфигурация компьютера Конфигурация Windows Сценарии (запускзавершение)Автозагрузка» (Computer ConfigurationWindows SettingsScriptsStartup) добавляем запуск скрипта с ключом /WEBMode:0 При перезагрузке клиентского компьютера произойдёт актуализация версий установленных плагинов – Java, Flash Player Plugin, Flash Player ActiveX878a98a862cf66148bfae8a40105cc18.png Другие параметры командной строки (доступны по стандартным ключам /? или /help) /mail:1 = отправлять e-mail при ошибках работы или при наличии обновлений /debug:0 = не выводить ничего /debug:1 = записывать только сообщения о выполняемых действиях (default) /debug:2 = записывать подробные сообщения /debug:3 = записывать детальные сообщения о вызываемых функциях и их параметрах /MailTest = проверка правильности настройки отправки почты (присылает тестовое сообщение) /ShowVersion[:comp] = выводит версии установленных на компьютере плагинов Java & Flash. При запуске без параметров — на локальном компьютере, если есть параметр — он трактуется как имяадрес компьютера При запуске без параметров скрипт просто выполняет обновление установленных плагинов через интернет. Живёт тут: github.com/osterik/FJUpdater На написание данного скрипта подвигла идея, почерпнутая у коллеги по цеху ccccp, автора утилиты NetOp Manager. Но его механизм требовал использования отдельного Perl-cкрипта для каждого плагина, не мог автоматически выцарапать ссылку на скачивание обновления Java с сайта Sun, а клиентская часть была написана на KiXtart, что создавало определенные сложности в настройке всего хозяйства.

Как это работает

Структура достаточно проста – информация о программе (она же выводится при запросе справки), параметры конфигурации, общая логика (Main), специфический код работы с сайтами Adobe & Sun, служебные процедуры и функции (доступ к файлам, реестру, http, отправка почты и т.п.)

Тонкие моменты

В случае с JAVA номер актуальной версии можно просто подсмотреть в файле www.java.com/applet/JreCurrentVersion2.txt, а вот чтобы скачать полный (оффлайн) установщик, надо посмотреть ссылку на странице java.com/en/download/windows_manual.jsp. Для версии 1.7.25 она равна javadl.sun.com/webapps/download/AutoDL?BundleId=79063, но для каждой версии цифры разные. Эта задача решается в функции sJavaGetLinkToDownload. В случае с Flash наоборот – парсить приходится номер актуальной версии (на странице www.adobe.com/software/flash/about). Функция sFlashVersionWEBGet ищет ячейки таблицы с последовательностью из 4-х чисел, разделенных точками, и, в зависимости от параметра sFlashType (тип Flash-проигрывателя( A=ActiveX, P=Plugin), возвращает первую или третью строчку таблицы. Загрузка полных установочных пакетов осуществляется по ссылкам download.macromedia.com/pub/flashplayer/current/support/install_flash_player.exe и download.macromedia.com/pub/flashplayer/current/support/install_flash_player_ax.exe. Естественно, время от времени ссылки меняются, поэтому, чтоб не пропустить этот момент, рекомендуется на компьютере из п3. (который регулярно запускает скрипт с ключом /WEBModeSaveInstall:1) также включить отправку логов по почте, ключ /mail:1. При обнаружении расхождений версий или ошибок функций доступа к сайтам производителей скрипт даст о себе знать. Надеюсь, FJUpdater станет отличным подарком для системных администраторов, чей праздник мы недавно отметили!Используемые источники:

  • https://winitpro.ru/index.php/2012/06/06/avtomaticheskoe-obnovlenie-adobe-flash-player/
  • https://helpx.adobe.com/ru/flash-player/kb/flash-player-background-updates.html
  • https://habr.com/post/188116/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации