
Одной из самых актуальных уязвимостей в Windows Server Update Services (WSUS) стала критическая ошибка с идентификатором CVE-2025-59287 и оценкой CVSS 9.8. Она связана с десериализацией недоверенных данных в службе обновления Windows Server и позволяет неавторизованному удаленному злоумышленнику выполнить код на сервере, отправив специально сформированное событие.
В разборах эксплуатации шаги были указаны некорректно, так как их взяли из статьи. Однако позже авторы сами ее исправили и указали, что разбор относится к CVE-2023-35317, тогда как анализ CVE-2025-59287 перенесли в отдельную статью.
Это вызвало путаницу в многочисленных репостах, поэтому мы решили расставить все точки над i и заодно показать, как атакующий может восстановить оснастку после эксплуатации уязвимости.
Статья носит исключительно информационный и образовательный характер и не является инструкцией или призывом к совершению противоправных действий. Описанные материалы предназначены для повышения осведомленности о возможных уязвимостях и методах их предотвращения. Любое тестирование безопасности допускается только при наличии явного разрешения правообладателя соответствующих ресурсов или в рамках официальной программы багбаунти. Несанкционированные действия могут нарушать законодательство. Автор статьи не поощряет и не поддерживает неправомерное использование представленной информации и не несет ответственности за ее использование в противоправных целях. Помните, что нужно уделять внимание защите своих данных и использовать информацию из статьи исключительно в законных целях.
Технические детали эксплуатации
Напомним условия для эксплуатации:
-
Сервер Windows с включенной ролью WSUS Server (по умолчанию отключена);
-
Неустановленные обновления KB5070879 / KB5070881 / KB5070882 / KB5070883 / KB5070884 / KB5070886 / KB5070887;
-
Сетевой доступ к портам 8530 (HTTP) или 8531 (HTTPS);
-
Учетные данные не требуются.
Техническая цепочка эксплуатации:
-
Получение конфигурации — злоумышленник отправляет запрос к
/ReportingWebService/ReportingWebService.asmxдля получения ServerID.
-
Извлечение cookies — используя ServerID, выполняется запрос к
/SimpleAuthWebService/SimpleAuth.asmxдля полученияAuthorizationCookie.
-
Получение криптографических данных — запрос к
/ClientWebService/Client.asmxдля извлечения временных меток и зашифрованной нагрузки.
-
Доставка полезной нагрузки — финальный запрос отправляет событие с вредоносным сериализованным объектом, созданным через ysoserial.net с гаджетом
TextFormattingRunProperties, с использованием событияSynchronizationCompletedCancel.
При обработке события с ID 389 (SynchronizationCompletedCancel) WSUS пытается десериализовать XML с телом ошибки, что приводит к выполнению произвольного кода.
Также в процессе эксплуатации регистрируется ложный узел с указанным DNS, в рамках которого отправляется событие. Этот процесс легко автоматизировать — например, с помощью шаблона Nuclei:

После успешной эксплуатации оснастка WSUS ломается. Это происходит потому, что GUI при отображении узлов парсит их события, а у ложного узла событие повреждено и не поддается десериализации. В результате отображение узлов вызывает исключение и интерфейс перестает работать.
Для восстановления необходимо удалить вредоносное событие из таблицы tbEventInstance в базе данных SUSDB. Однако прямой доступ к БД есть только у привилегированных пользователей, а служба WSUS часто запущена от имени Network Service.
При этом служба WSUS имеет доступ к функциям, используемым в оснастке, поэтому пользователь, от имени которого получена сессия (даже Network Service), может управлять зарегистрированными узлами. Это позволяет безопасно завершить эксплуатацию и сразу восстановить оснастку.
$wsus = Get-WsusServerGet-WsusComputer -NameIncludes "test1337.test.local" | ForEach-Object { $wsus.GetComputerTarget($_.Id).Delete()}
Эта команда выполняет две важные функции:
-
Удаляет зарегистрированный ложный узел из базы данных WSUS;
-
Автоматически очищает связанное с ним событие с ID 389, использованное для доставки полезной нагрузки.
Почему это важно: без очистки в WSUS остаются артефакты — ложный узел и события в логах, что может нарушить нормальную работу службы.
Эта уязвимость демонстрирует, как критические компоненты инфраструктуры могут становиться точкой входа для злоумышленников. При проведении тестирования на проникновение важно не только атаковать, но и корректно восстанавливать систему после эксплуатации.
Что можно порекомендовать для защиты:
-
Установите обновления — KB5070879 / KB5070881 / KB5070882 / KB5070883 / KB5070884 / KB5070886 / KB5070887 в зависимости от версии Windows Server
-
Ограничьте сетевой доступ — WSUS не должен быть доступен из интернета. Используйте сегментацию сети для ограничения доступа только доверенным подсетям
-
Если невозможно обновить — временно отключите роль WSUS Server или заблокируйте порты 8530/8531 до установки патчей
Экспертный центр безопасности Positive Technologies (PT ESC)
(Источник: https://t.me/ptescalator)
ссылка на оригинал статьи https://habr.com/ru/articles/1024766/