Клиент предоставил экземпляр Windows Server 2012R2 для использования в качестве нашего сервера. Этим утром (25 июля) я повторно подключился к коробке, чтобы изменить свой пароль, и сразу получил запрос об успешной установке Java и удалении старых версий Java.
Это вызывает тревогу, потому что наше серверное приложение основано на Java и в настоящее время работает на более старой версии Java (что подходит для наших целей), и удаление более старой версии Java может привести к сбою нашего серверного приложения, если вы удалите версию, которую оно использует. !
Естественно, я отказался удалить старую версию Java, но мы с коллегой были обеспокоены тем, что мне даже предложили. Если кто-то другой вошел в систему, не зная о нашей зависимости Java, он может удалить старую версию.
Я проверил свои настройки обновления Java и обнаружил, что он настроен на проверку, но запрашивает перед загрузкой. (Поскольку я отключил даже проверку.)
Мы провели дальнейшее расследование и обнаружили в средстве просмотра событий, что 20 июля около полудня на приставке была установлена новая версия Java (8 update 101), и, очевидно, я это сделал (или это было сделано с моим идентификатором пользователя). Однако мы знаем, что я этого не делал, поскольку в тот день я был в отпуске в Йеллоустонском национальном парке без интернета! Мой идентификатор пользователя - это учетная запись AD с правами администратора, но она называется smmccants и не имеет общего пароля. У меня был сеанс, запущенный на сервере (я обычно отключаюсь, а не выхожу из системы).
Я не смог найти ничего интересного в средстве просмотра событий после повторного подключения и взаимодействия с диалоговыми окнами Java сегодня утром (25.07.2016, незадолго до 10:00).
Мы хотим понять, что произошло, и предотвратить это в будущем. Есть идеи, как это могло произойти автоматически и где еще мы должны искать подсказки?
Ниже приведены журналы, которые я нашел в EventViewer.
Из средства просмотра событий (источник: MsiInstaller), 20.07.2016, 11:59:44:
Начало транзакции установщика Windows: C: \ Users \ smmccants \ AppData \ LocalLow \ Oracle \ Java \ jre1.8.0_101 \ jre1.8.0_101full.msi Идентификатор клиентского процесса: 87064
Из MsiInstaller, 20.07.2016, 12:00:29:
Продукт: Java 8 (обновление 101) - установка успешно завершена
-
Установщик Windows установил продукт. Название продукта: Java 8 (обновление 101). Версия продукта: 8.0.1010.13. Язык продукта: 1033 Производитель: Oracle Corporation. Статус успешной установки или ошибки: 0.
-
Завершение транзакции установщика Windows: C: \ Users \ smmccants \ AppData \ LocalLow \ Oracle \ Java \ jre1.8.0_101 \ jre1.8.0_101full.msi. Идентификатор клиентского процесса: 87064
-
Начало транзакции установщика Windows: {4A03706f-666A-4037-7777-5F2748764D10}. Идентификатор клиентского процесса: 87064
А затем из RestartManager (что бы это ни было ...):
Начало сеанса 0 - 2016-07-20T17: 00: 29.904899600Z
Наконец, мы получаем новую отметку времени - 20.07.16 12:00:39 и сообщает MsiInstaller:
Продукт: Java Auto Updater - Удаление успешно завершено.
Кто заказал удаление и как они это сделали через мою учетную запись? Вероятно, часть процесса установки Java 8 Update 101.
Установщик Windows удалил продукт. Название продукта: Java Auto Updater. Версия продукта: 2.8.77.3 Язык продукта: 1033 Производитель: Oracle Corporation. Статус успешного удаления или ошибки: 0.
-
Завершение транзакции установщика Windows: {4A03706f-666A-4037-7777-5F2748764D10}. Идентификатор клиентского процесса: 87064
-
Начало транзакции установщика Windows: C: \ Users \ smmccants \ AppData \ LocalLow \ Oracle \ Java \ jre1.8.0_101 \ au.msi. Идентификатор клиентского процесса: 87064
Сейчас в 12:00:40
Продукт: Java Auto Updater - установка успешно завершена.
-
Установщик Windows установил продукт. Название продукта: Java Auto Updater. Версия продукта 2.8.101.13. Язык продукта: 1033. Производитель: Oracle Corporation. Статус успешной установки или ошибки: 0.
-
Завершение транзакции установщика Windows: C: \ Users \ smccants \ AppData \ LocalLow \ Oracle \ Java \ jre1.8.0_101 \ au.msi. Идентификатор клиентского процесса: 87064.
-
Начало транзакции установщика Windows: {26A24AE4-039D-4Ca4-87B4-2F83218077F0}. Идентификатор клиентского процесса: 87064
Теперь вернемся на одну секунду назад к 12:00:39 для одного сообщения от RestartManager:
Завершение сеанса 0 началось 2016-07-20T17: 00: 29.904899600Z
Теперь RestartManager в 12:00:40:
Начало сеанса 0 - 2016-07-20T17: 00: 40.326806900Z
-
Завершение сеанса 0 началось 2016-07-20T17: 00: 29.904899600Z
Теперь мы переходим к действительно пугающим сообщениям MsiInstaller в 12:01:07:
Продукт: Java 8 (обновление 77) - Удаление успешно завершено.
-
Установщик Windows удалил продукт. Название продукта: Java 8 (обновление 77). Версия продукта: 8.0.770.3. Язык продукта: 1033. Производитель: Oracle Corporation. Статус успешного удаления или ошибки: 0.
Следующее сообщение регистрируется не мной, а пользователем SYSTEM.
Завершение транзакции установщика Windows: {26A24AE4-039D-4Ca4-87B4-2F83218077F0}. Идентификатор клиентского процесса: 87064
Это все, что я нашел.
Мы больше не видели, чтобы проблема возникла. Мы сделали две вещи, чтобы смягчить это поведение: