WSUS服务未认证远程代码执行漏洞深度解析

本文深入剖析了微软Windows Server Update Services (WSUS) 中一个关键的反序列化漏洞CVE-2025-59287。该漏洞允许未经认证的攻击者通过网络触发反序列化过程,从而以SYSTEM权限执行任意代码。文章详细介绍了其技术原理、利用条件、PoC示例以及关键的缓解措施。

WSUS服务中的未认证远程代码执行漏洞

概述

在微软Windows Server Update Services (WSUS)中发现了一个关键的反序列化漏洞,该漏洞允许未经认证的攻击者在受影响的服务器上执行任意代码。该漏洞由WSUS数据(AuthorizationCookie)的不安全反序列化触发,使得攻击者能够以SYSTEM权限远程执行代码,并且已在实际攻击活动中被观测到。微软在最初的“补丁星期二”修复未能完全解决问题后,发布了带外(OOB)更新。

  • CVE ID: CVE-2025-59287
  • 严重性: 严重
  • CVSS 分数: 9.8
  • EPSS 分数: 9.40%
  • 影响: 远程代码执行
  • 攻击向量: 网络
  • 需要认证:
  • 易受攻击组件: Windows Server Update Services中的WSUS反序列化代码路径(/SimpleAuthWebService/SimpleAuth.asmx

技术细节剖析

CVE-2025-59287是微软Windows Server Update Services (WSUS)中不安全反序列化的结果。WSUS接受一个AuthorizationCookie载荷,该载荷会被解密,随后在没有充分类型验证或允许列表的情况下,使用遗留的.NET格式化器(特别是BinaryFormatter,在某些代码路径中是SoapFormatter)进行反序列化。攻击者可以提供一个精心构造的、加密的AuthorizationCookie,该cookie在解密后包含一个恶意的序列化对象图,该对象图利用反序列化接收器,从而实现任意对象实例化和后续执行。

研究和事件报告已识别出多种利用路径。一种向量针对GetCookie()流程,其中伪造的cookie被解密并直接传递给BinaryFormatter进行反序列化;序列化载荷中合适的gadget链可以在WSUS进程上下文中触发远程代码执行。第二种向量利用WSUS报告Web服务(例如,ReportingWebService.asmx),精心构造的SOAP请求可以到达SoapFormatter反序列化接收器。这两种路径均可通过网络访问,并且在可访问的情况下,无需认证即可被利用。

成功利用此漏洞可在WSUS服务(通常是SYSTEM)权限下实现任意代码执行,从而导致服务器被立即入侵、建立持久化机制(如Webshell、计划任务或服务),并利用该主机作为横向移动的跳板。该漏洞被归类为不安全反序列化(CWE-502),并由于其未经认证、网络可访问的特性而被评定为严重(CVSS 9.8)级别。

利用条件

  1. WSUS服务器角色必须安装在域控制器上。
  2. WSUS实例必须未针对CVE-2025-59287打补丁(未安装KB5070881 / KB5070882 / KB5070883)。

利用示例

我们将利用Offsec平台提供的Windows In-Browser机器进行利用。将要使用的概念验证实现是CVE-2025-59287-WSUS

第一步是编辑漏洞利用脚本的“Parameters”部分,配置攻击者和目标详细信息。我们将设置监听主机的IP地址、WSUS服务目标URL以及我们将接收反弹shell的本地端口。

1
2
3
4
# 参数
$lhost = "192.168.49.51"    # 你的Kali Netcat主机
$lport = 53
$targetURL = "http://192.168.51.89:8530"  # WSUS URL

该脚本自动化了向WSUS ReportingWebService端点创建和发送序列化载荷的过程,以在WSUS控制台处理注入的事件时实现远程代码执行。它通过多个SOAP调用获取或伪造所需的WSUS授权cookie/ID,构造一个包含Base64编码的序列化gadget链(使用ysoserial.net生成)的恶意ReportEventBatch XML,该链中嵌入了PowerShell反弹shell,并将该事件发布到目标服务。

反弹shell载荷将在管理员打开WSUS管理控制台时触发。

动手尝试: 您可以通过OffSec Offensive Cyber Range为CVE-2025-59287开设的实验室在受控环境中尝试利用这些漏洞。

缓解措施

  1. 立即使用微软2025年10月23日的带外安全更新来更新WSUS和Windows Server。
  2. 如果WSUS不是必需的,请在完全打好补丁之前禁用WSUS服务器角色。
  3. 限制WSUS网络访问——阻断或过滤到管理端口(TCP 8530和8531)的入站连接,仅允许受信任的子网,并应用出站(出口)过滤以防止回调、载荷下载或反弹shell连接。

参考资料

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计