Windows Server Update Services作为微软推出的企业级补丁管理核心工具,承担着为 Windows Server 2016/2019/2022/2025 及 Windows 10/11 等系统集中分发更新的关键职责。管理员通过 WSUS 可精准控制更新部署节奏,保障企业内网设备的安全性与稳定性。然而,2025 年 10 月hawktrace公司博客披露的 CVE-2025-59287 漏洞,为这一核心服务埋下了致命安全隐患。博客原文地址:https://hawktrace.com/blog/CVE-2025-59287
该漏洞属于远程代码执行(RCE) 类型,CVSS 评分高达 9.8(Critical),攻击者无需身份验证,仅需向 WSUS 服务器的GetCookie()端点发送特制加密 Cookie,即可触发不安全反序列化,最终以SYSTEM 权限控制目标服务器。这意味着一旦漏洞被利用,攻击者可全面接管 WSUS 服务,篡改更新内容、植入恶意程序,甚至横向渗透整个企业内网,造成数据泄露、业务中断等严重后果。MSRC透出的漏洞通告:https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-59287
值得注意的是,尽管微软已宣布 WSUS 进入 deprecated 状态(不再新增功能),但该服务仍在主流 Windows Server 版本中受支持并接收安全更新,因此所有部署 WSUS 的企业均面临直接威胁。
CVE-2025-59287 的根源在于服务中EncryptionHelper.DecryptData()方法对AuthorizationCookie对象的不安全处理,详细分析见:
https://hawktrace.com/blog/CVE-2025-59287核心风险点集中在解密后的数据未经过严格验证即通过 BinaryFormatter 反序列化,DecryptData()方法负责处理客户端发送的加密 Cookie 数据,其存在的设计缺陷直接导致漏洞产生,关键代码片段及问题点如下:
internalobjectDecryptData(byte[] cookieData){if (cookieData == null) {thrownew LoggedArgumentNullException("cookieData"); }// 1. 初始化AES-128-CBC解密器 ICryptoTransform cryptoTransform = this.cryptoServiceProvider.CreateDecryptor();byte[] array;try {// 2. 基础输入验证(仅检查块大小对齐,无内容合法性校验)if (cookieData.Length % cryptoTransform.InputBlockSize != 0 || cookieData.Length <= cryptoTransform.InputBlockSize) {thrownew LoggedArgumentException("Can't decrypt bogus cookieData; data is size, " + cookieData.Length.ToString() + ", which is not a multiple of " + cryptoTransform.InputBlockSize.ToString(), "cookieData"); }// 3. 执行AES-128-CBC解密 array = newbyte[cookieData.Length - cryptoTransform.InputBlockSize]; cryptoTransform.TransformBlock(cookieData, 0, cryptoTransform.InputBlockSize, EncryptionHelper.scratchBuffer, 0); cryptoTransform.TransformBlock(cookieData, cryptoTransform.InputBlockSize, cookieData.Length - cryptoTransform.InputBlockSize, array, 0); }finally { cryptoTransform.Dispose(); }object obj = null;// 4. 类型判断:区分UnencryptedCookieData与其他类型if (this.classType == typeof(UnencryptedCookieData)) {// 安全路径:使用自定义Deserialize方法处理,无反序列化风险 UnencryptedCookieData unencryptedCookieData = new UnencryptedCookieData();try { unencryptedCookieData.Deserialize(array); }catch (Exception ex) {if (ex is OutOfMemoryException) throw;thrownew LoggedArgumentException(ex.ToString(), "cookieData"); } obj = unencryptedCookieData; }else {// 5. 漏洞核心:使用BinaryFormatter直接反序列化解密后的数据 BinaryFormatter binaryFormatter = new BinaryFormatter(); MemoryStream memoryStream = new MemoryStream(array);try {// 未进行任何类型白名单校验或数据净化,直接反序列化 obj = binaryFormatter.Deserialize(memoryStream); }catch (Exception ex2) {if (ex2 is OutOfMemoryException) throw;thrownew LoggedArgumentException(ex2.ToString(), "cookieData"); }// 6. 事后类型检查(仅验证类型匹配,无法阻止恶意对象构造)if (obj.GetType() != this.classType) {thrownew LoggedArgumentException("Decrypted cookie has the wrong data type. Expected type = " + this.classType.ToString() + ", actual type = " + obj.GetType().ToString(), "cookieData"); } }return obj;}利用该漏洞的完整链路可分为 4 个关键步骤,最终实现远程代码执行:
ysoserial.net工具生成 BinaryFormatter 兼容的 Payload,并使用与 WSUS 服务器一致的 AES-128-CBC 密钥加密。/ClientWebService/Client.asmx接口向GetCookie()端点发送 SOAP 请求,将加密后的数据嵌入AuthorizationCookie.CookieData字段。DecryptData()方法,使用 AES-128-CBC 解密恶意 Cookie,得到原始序列化字节流。UnencryptedCookieData类型,代码进入BinaryFormatter.Deserialize()逻辑,直接将恶意字节流反序列化为对象,此时恶意代码被执行,堆栈图如下所示。考虑到漏洞的高危性,建议部署 WSUS 的企业立即采取以下措施:
阻断端点访问
通过防火墙、IIS 配置或 WAF 规则,限制/ClientWebService/Client.asmx接口的访问来源,仅允许可信客户端 IP 访问。禁用WSUS服务
若短期内无法修复,可临时禁用 WSUS 服务,改用 Microsoft Intune 或直接通过 Microsoft Update 获取更新(需评估业务影响)
及时更新补丁
关注微软 MSRC 公告(https://msrc.microsoft.com/update-guide/),一旦官方补丁发布,立即部署更新。
免责声明:此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。任何未经授权的网络渗透、入侵或对他人网络破坏的活动而造成的直接或间接后果和损失,均由使用者为自身的行为负责并承担全部的法律和连带责任,与本号及作者无关,请务必遵循相关法律法规。本文所提供的工具仅用于学习和本地安全研究和测试,禁止用于其他方面。
以上相关的反序列化知识点已收录于新书《.NET安全攻防指南》,全书共计25章,总计1010页,分为上下册,横跨.NET Web代码审计与红队渗透两大领域。
上册深入剖析.NET Web安全审计的核心技术,帮助读者掌握漏洞发现与修复的精髓;下册则聚焦于.NET逆向工程与攻防对抗的实战技巧,揭秘最新的对抗策略与技术方法。
一个不错的安全学习社区,必须要解决的核心问题之一就是:如何把零散的知识点组织成体系,帮助学习者形成由浅入深、由点到面的认知路径。dot.Net 安全矩阵知识星球在这方面进行了精心的设计,通过 [ 点、线、面、体]的四层结构,将复杂的技术知识以系统化的方式呈现。
点的层面
在点的层面,每一个具体的漏洞、原理、方法论都是一个独立的知识单元。比如,一篇关于 WCF 配置漏洞的研究文章,就是一个“点”。这些点看似独立,但积累多了之后,容易让人觉得零散。于是,社区进一步将它们串联成“线”。
所谓的线
所谓“线”,就是将多个知识点结合起来,形成一条技术路径。比如从发现某个反序列化漏洞,到构建利用链,再到实现远程命令执行,最后结合权限提升与持久化的步骤,这就是一条完整的攻防路径。这类“线”让学习者理解到知识点之间的联系,而不是停留在碎片化的层面。
延伸到面
当多条技术路径相互汇聚,就形成了“面”。例如内网攻防专题,就是由无数漏洞点与利用线构成的知识面。从横向上覆盖了扫描、横向移动、凭据窃取等环节,从纵向上深入到权限维持和数据外泄。通过“面”的方式,学习者可以对某一领域形成全面的掌握,而不是停留在片面的理解。
拓展至体
在当下,社群学习平台很多,为什么 dot.Net 安全矩阵知识星球能够脱颖而出,成为国内最活跃的 .NET 安全社区?这要归功于独特的特色与优势。
首先是嘉宾阵容的强大,社区内的嘉宾大多是活跃在一线的安全研究员、红队专家、企业安全负责人。他们不仅有着丰富的实战经验,还乐于分享自己在攻防过程中的思考。这种专家与学习者之间的交流,不仅缩短了学习曲线,还让成员能够接触到真正的前沿信息。
其次是内容的高质量与高浓度。与一些泛技术群不同,这里没有大量的闲聊和噪音。每一个主题、每一次精华整理,都是针对性极强的知识分享。社区内沉淀下来的 630+ 精华主题和 800+ 文档资料,本身就是一座宝库。对于新成员而言,仅仅是浏览这些资料,就已经能够收获巨大的知识增量。
第三,学习形式的多样化。社区不仅仅依赖文字资料,还提供视频课程、实战演示等多种学习方式。比如在讲解反序列化利用时,不只是单纯的代码展示,还会结合视频进行动态演示,让学习者更直观地理解漏洞利用的过程。这种多形式的学习体验,大大提升了内容的可接受性与趣味性。
再者,社区始终保持着实用性与前沿性兼顾的原则。一方面,解决的是成员在日常工作与研究中切实遇到的问题,具有极强的实战导向;另一方面,也会关注最新的漏洞通报、研究趋势,帮助成员站在更高的视角去理解攻防演变。
最后,不容忽视的是社区的文化氛围。这里并不是单向灌输的课堂,而是一个强调互动与共享的空间。无论是初学者还是专家,都可以在这里畅所欲言。社区鼓励提问,也鼓励分享,逐渐形成了“学习-分享-再学习”的良性循环。正是这种氛围,让越来越多的成员在这里找到了归属感。
dot.Net 安全矩阵知识星球的定位非常清晰:既服务于专业人士,也兼顾.NET 入门学习者,覆盖了从初学到进阶的整个成长路径。
安全研究者
对于安全研究员而言,这里是一个前沿信息的聚集地。无论是最新的漏洞利用思路,还是深度的防御方案,都可以在社区中找到。而且通过与其他研究员的交流,他们能够快速验证自己的思路,甚至碰撞出新的研究方向。
渗透工程师
对于渗透测试工程师,这里是一个实战经验的宝库。很多内网渗透、持久化、横向移动的案例,都是可以直接复用到项目中的。通过学习这些案例,工程师不仅能够提升效率,还能更好地应对复杂的测试环境。
研发工程师
对于开发工程师而言,加入社区的价值则在于知己知彼。了解常见的漏洞原理与攻击方式,有助于他们在编码阶段就避免这些问题,提升应用程序的安全性。很多开发者反馈,社区的学习让他们第一次真正理解了安全测试人员是如何思考的,从而在代码层面进行了针对性的优化。
运维管理者
运维与安全管理人员也同样受益。对于他们而言,最重要的是能够快速发现并修复风险。社区提供的工具与脚本,往往能在第一时间帮助他们定位问题,节省了大量排查时间。
在校生和爱好者
即使是完全的初学者,也无需担心。社区的体系化设计确保了入门者能够从最基础的概念开始学习,不会被一上来就抛出的高深内容劝退。而且社区文化的包容性,让他们敢于提问,敢于尝试,从而在较短时间内完成从零到一的过渡。因此,不论是专家还是新手,不论是专注于研究还是实际运维,dot.Net 安全矩阵知识星球都能为其提供对应的价值。
加入社区的方式非常简单,只需通过扫码知识星球平台即可完成加入。成为正式成员后,不久便可以解锁全部的主题、精华、文档与视频等资源。同时,还可以进入专属的微信群,与其他成员进行更紧密的交流。
微信群不仅仅是一个信息交流的渠道,更是一个陪伴式的学习环境。很多成员每天都会在群里分享自己的问题与经验,这种互动让学习不再是孤单的过程。初学者能够从前辈的经验中获得启发,嘉宾则能够通过解答问题来加深自己的理解。久而久之,群体之间形成了深厚的学习氛围,彼此陪伴成长。
更重要的是,社区的长期陪伴属性。与市面上一些一次性课程不同,这里强调的是持续成长。加入的不仅仅是一个知识库,更是一个动态发展的生态。随着时间的推移,社区会不断有新的主题、新的案例出现,而你也将在这个过程中逐渐积累起属于自己的知识体系和圈子。
dot.Net 安全矩阵知识星球不仅仅是一个学习平台,更是一个完整的学习与成长生态。在这里,你能够接触到最前沿的 .NET 安全研究成果,能够解决工作中的实际问题,能够找到职业发展的新机会,还能够在长期的互动中培养自己的独立思考能力。
如果你正在寻找一个既能学习又能成长、既能积累知识又能拓展职业发展的地方,那么加入这个社区无疑是一个明智的选择。不仅能帮助你在短期内获得实用技能,更能在长期中塑造你作为技术人的竞争力与眼界。 [ 星球门票后期价格随着内容和质量的不断沉淀会适当提高,所以越早加入越好]
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……




还没有评论,来说两句吧...