新型Windows RPC攻击可劫持服务并完全攻陷Active Directory,PoC已公开
攻击流程图 | 图片来源:SafeBreach实验室
SafeBreach实验室的安全研究员Ron Ben Yizhak发现了一种名为"端点映射器(Endpoint Mapper,EPM)投毒"的新型攻击技术,该技术利用了Windows远程过程调用(Remote Procedure Call,RPC)协议的核心缺陷。该漏洞编号为CVE-2025-49760,微软已于2025年7月8日发布补丁,但未打补丁的系统可能面临严重后果——从机器账户凭据窃取到Active Directory域完全沦陷。
漏洞原理:无权限劫持RPC服务
这项研究始于一个简单问题:能否将类似DNS投毒的技术应用于RPC端点映射器?Ben Yizhak表示:
"我很快发现Windows RPC协议核心组件存在严重安全问题。具体而言,该漏洞表明系统缺乏验证机制来阻止低权限用户伪装成知名RPC服务器。"
本质上,如果攻击者能在合法服务之前向EPM注册,就能劫持接口并伪装成受信任的RPC服务器。EPM随后会将客户端请求路由到攻击者的恶意服务——整个过程无需管理员权限。
攻击工具与关键发现
为验证漏洞可利用性,Ben Yizhak开发了RPC-Racer工具,该工具能够:
- 检测不安全的RPC服务
- 注册恶意接口
- 捕获高权限进程的连接
关键发现是:延迟启动服务(在系统启动后注册接口的服务)成为主要攻击目标。通过"竞速"抢先注册接口,RPC-Racer可拦截来自特权服务(包括受保护进程轻量级Protected Process Light,PPL)的连接。
攻击链实现域控完全沦陷
突破点出现在存储服务接口(Storage Service),该接口被Windows交付优化服务(Delivery Optimization)使用。当这个高权限服务被诱骗连接到攻击者端点时,会调用返回文件路径的方法。
通过操纵GetStorageDeviceInfo响应,攻击者可强制服务访问其控制的SMB共享,从而触发机器账户凭据认证。研究人员称:"我成功绕过登录用户限制,使用机器账户进行认证...这标志着突破了安全边界。"
获取机器账户凭据后,Ben Yizhak演示了完整的ESC8 Active Directory证书服务(ADCS)攻击链:
- 将交付优化服务的NTLM认证中继到ADCS Web注册服务器
- 获取机器账户证书
- 使用证书请求Kerberos票据授予票据(Ticket Granting Ticket,TGT)
- 通过Impacket的secretsdump工具导出所有域控制器密钥
这一攻击链使得攻击者从中等完整性用户账户开始,最终实现整个域的完全控制。
修复建议与缓解措施
微软通过修改存储服务RPC客户端(StorageUsage.dll)来强制实施安全服务质量(Quality of Service,QOS)修复该漏洞,确保其仅连接到以本地系统身份运行的RPC服务器。
SafeBreach建议采取以下措施:
- 监控
RpcEpRegister
调用,检测可疑接口注册 - 利用Windows事件追踪(
Microsoft-Windows-RPC
提供程序)识别未知进程在已知接口接收RPC连接的情况 - 立即应用微软补丁