ADG Оставить заявку
Блог Информационная безопасность 4 мин чтения

MS06-040: шесть часов на раскатку критического патча по всем клиентским Windows-машинам

Microsoft закрывает RCE в Server Service с CVSS 10.0 - без аутентификации, через сеть. NetworkBlast PoC появился через сутки. Отрабатываем первую emergency patch-сессию по регламенту.

Контекст момента

Microsoft выпускает критический патч MS06-040 для уязвимости удалённого выполнения кода в Server Service - CVSS 10.0, без аутентификации, активная эксплуатация начинается через сутки после публикации

Вчера вечером Microsoft выкатил MS06-040 - патч для Server Service в Windows. Рейтинг critical, CVSS 10.0, вектор атаки сетевой, аутентификация не нужна. Уязвимость в обработке RPC-запросов: специально сформированный пакет на 445/tcp даёт выполнение кода с привилегиями SYSTEM. Если это что-то и напоминает, то Blaster в 2003-м - та же механика, тот же порт.

Мы не стали ждать утра среды.

Почему сразу, а не по плану

У нас уже есть процедура аудита безопасности с классификацией патчей: critical с активной эксплуатацией - экстренно, остальное - через плановый цикл раз в месяц. MS06-040 попадает в первую категорию даже без PoC: Server Service включён по умолчанию на всех версиях Windows от 2000 до 2003, порт 445 открыт везде где есть SMB, и CVSS 10.0 - это не маркетинг, это "уязвимость закрывается периметром либо патчем, третьего не дано".

Когда к ночи в нескольких местах появились первые сообщения об исследовательских эксплойтах под рабочим названием NetworkBlast - мы уже были в процессе.

Как выглядела сессия

WSUS у нескольких наших клиентов уже стоит - мы его разворачивали в ходе работ по управлению патчами. Стандартный цикл: Microsoft выпускает обновление, WSUS синхронизируется, мы одобряем нужные группы, машины тянут патч на следующем плановом Check-in. Это работает для планового режима. Для emergency нужно чуть другое.

Схема, по которой мы прошли:

  • Принудительная синхронизация WSUS - не ждём планового расписания, запускаем вручную через консоль. Патч KB921883 появляется в каталоге.
  • Одобрение для всех машин немедленно - не тестовая группа, не отложенный деплой. Критичность и простота патча (не меняет поведение ПО, только закрывает дыру) позволяют пропустить тестовую фазу.
  • Принудительный Check-in - wuauclt /detectnow через psexec по списку машин. На большинстве это срабатывает в течение нескольких минут.
  • Контроль статуса - в консоли WSUS отчёт по установке: кто получил, кто ждёт перезагрузки, кто не отвечает.
  • Отдельный список проблемных - машины выключены, недоступны по сети, или агент WSUS ведёт себя странно. На них - ручная установка патча через msi либо через логон-скрипт GPO.

Общее время от начала до момента, когда все активные машины показали "installed" или "pending reboot" - около шести часов. Несколько машин остались в статусе "offline" - ноутбуки, которые просто были выключены. Их закроем при первом включении автоматически, WSUS это отработает сам.

Что не сработало по плану

Один клиент держит несколько серверов на Windows 2000, которые в WSUS не зарегистрированы - слишком старые агенты, руки не дошли нормально настроить. Там пришлось идти через msiexec вручную по RDP. Занимает время, раздражает, но патч встал.

Ещё момент: у части машин после установки система требует перезагрузку, и они её ждут. Пока перезагрузка не случилась - патч технически установлен, но дыра открыта. Перезагрузить сервер в 2 ночи - это разговор с владельцем бизнеса. Большинство согласились сразу, один попросил до 6 утра. Договорились.

Что зафиксировали в регламент

До этой ночи у нас был написанный регламент emergency patching, но он был написан теоретически - мы его ни разу не прогоняли в реальных условиях. Теперь есть первый реальный кейс, и несколько вещей стали очевидными:

  • Список машин вне WSUS нужно держать актуальным и отдельным. Не "примерно знаем что там что-то есть", а конкретный список с версиями ОС и способом доступа.
  • Окно перезагрузки должно быть согласовано заранее - не в момент инцидента. У каждого клиента должно быть зафиксировано: "в случае критического патча перезагрузка серверов допустима с X до Y без дополнительного согласования".
  • Проверка периметра как первый шаг - пока WSUS раскатывает патч, временная мера: убедиться что 445/tcp закрыт на внешнем межсетевом экране. У всех наших клиентов так и было, но лишний раз проверить не помешало.
  • Отчёт по итогам - на следующий день каждый клиент получает список: сколько машин закрыто, сколько ждут перезагрузки, сколько недоступны и почему.

Где мы сейчас

Все активные машины закрыты. Оффлайновые закроются при включении. Регламент пополнился первым реальным прогоном. NetworkBlast в дикой природе активности пока не показал - но это не повод расслабляться, с момента публикации патча прошло меньше двух суток.

Отдельная тема - Windows 2000 с неподдерживаемым агентом WSUS. Надо либо обновлять инфраструктуру, либо строить отдельный инструментарий для этих машин. Пока обходимся вручную, но это не масштабируется.

Контакт

Нужна такая же инженерная работа?

Опишите задачу и контекст. Ответим в течение рабочего дня, при необходимости подпишем NDA.