
0patch研究人员在调查另一个已修复漏洞时,发现Windows远程访问连接管理器(RasMan)服务中存在一个未修复的安全漏洞。
漏洞发现过程
调查始于微软在2025年10月更新中修复的Windows提权漏洞(CVE-2025-59230)。分析该漏洞利用程序时,研究人员发现其"完美演示了非管理员Windows用户如何以Local System权限执行任意代码"。但该利用程序内部还隐藏着另一个武器。
研究报告指出:"有趣的是,这个利用程序在攻击(CVE-2025-59230)的同时,还包含对另一个至今仍未修复漏洞的利用。"
原始漏洞机制
(CVE-2025-59230)依赖于远程访问连接管理器(RasMan)服务的竞态条件问题。RasMan启动时会注册一个受其他特权服务隐式信任的RPC端点。如果RasMan未运行,攻击者可抢先注册该端点,诱骗其他服务连接到恶意进程。
但存在一个障碍:RasMan几乎总是随Windows自动启动。研究人员解释:"RasMan服务通常在Windows启动时自动运行...即使是本地攻击者创建的定时任务,也难以在其'未运行'状态下捕获它。"
关键漏洞组合
为突破这一限制,漏洞利用程序需要能够终止该服务。"因此,有效的利用程序必须能够(同时)停止RasMan服务以释放所述RPC端点"。这一需求导致发现了第二个漏洞:允许任何非特权用户按需崩溃RasMan服务的缺陷。"若不具备此能力,(CVE-2025-59230)几乎无法被利用"。
技术根源分析
0patch追踪发现这是一个循环链表中的经典编码错误。代码遍历链表时未能正确处理NULL指针。报告指出:"在循环内部,当前元素指针会与NULL进行比较——这本是合理的健全性检查。"
但逻辑存在缺陷:代码在发现NULL指针后未退出循环,而是继续从中读取。"如果指针为NULL...循环不会退出,反而会继续从这个NULL指针读取下一个链表元素的指针",导致立即发生内存访问冲突和服务崩溃。
修复方案
虽然微软已获知此事并"可能在未来更新中为仍受支持的Windows版本提供官方补丁",但0patch已发布即时微补丁修复该漏洞。该修复向脆弱循环注入正确的健全性检查。"我们的补丁(蓝色和绿色代码块)注入了另一个NULL指针检查以退出循环",从而防止崩溃并有效消除整个利用链。
微补丁现已支持多种系统,包括完全更新的Windows 11(v21H2至v25H2)、Windows 10,以及Windows 7和Server 2008 R2等旧版系统。
参考来源:
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf
客服小蜜蜂(微信:freebee1024)



