当前位置: 首页 > web >正文

新型Windows RPC攻击可劫持服务并完全攻陷Active Directory,PoC已公开

EPM投毒攻击流程图


攻击流程图 | 图片来源: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)攻击链:

  1. 将交付优化服务的NTLM认证中继到ADCS Web注册服务器
  2. 获取机器账户证书
  3. 使用证书请求Kerberos票据授予票据(Ticket Granting Ticket,TGT)
  4. 通过Impacket的secretsdump工具导出所有域控制器密钥

这一攻击链使得攻击者从中等完整性用户账户开始,最终实现整个域的完全控制。

修复建议与缓解措施

微软通过修改存储服务RPC客户端(StorageUsage.dll)来强制实施安全服务质量(Quality of Service,QOS)修复该漏洞,确保其仅连接到以本地系统身份运行的RPC服务器。

SafeBreach建议采取以下措施:

  • 监控RpcEpRegister调用,检测可疑接口注册
  • 利用Windows事件追踪(Microsoft-Windows-RPC提供程序)识别未知进程在已知接口接收RPC连接的情况
  • 立即应用微软补丁
http://www.xdnf.cn/news/17726.html

相关文章:

  • 开发npm包【详细教程】
  • 测试匠谈 | AI语音合成之大模型性能优化实践
  • 【c++】反向赋值:颠覆传统的数据交互范式
  • HeidiSQL 连接 MySQL 报错 10061
  • 工业相机终极指南:驱动现代智能制造的核心“慧眼”
  • mimiconda+vscode
  • 基恩士FSN10系列数字光纤传感器全新型光纤放大器 FSN11CP
  • 後端開發技術教學(五) 魔術方法、類、序列化
  • Day02——Docker
  • Avalonia实例实战六:控件的拖放
  • 前端面试:promise...then与asnyc ...await
  • 【算法训练营Day23】贪心算法part1
  • 前端工程化:pinia
  • 分享一款基于STC8H8K32U-45I-LQFP48单片机的4路数字量输入输出模块
  • 当AI重塑世界:普通人如何成为“主动进化者”?
  • 第16届蓝桥杯Python青少组_省赛_中/高级组_2025年5月真题
  • VirtualBox虚拟机网卡配置
  • LeetCode 2438.二的幂数组中查询范围内的乘积:模拟(前缀和可选)
  • Ansible 面试题 20250811
  • ansible学习第一天
  • 逐际动力开源运控 tron1-rl-isaacgym 解读与改进
  • 聊天室全栈开发-保姆级教程(Node.js+Websocket+Redis+HTML+CSS)
  • 当C#遇上Notepad++:实现GCode可视化编辑的跨界实践
  • ArkUI中的自定义组件(一)
  • 【MYSQL】MySQL中On duplicate key update
  • FlinkSql(详细讲解一)
  • Dify入门指南(2):5 分钟部署 Dify:云服务 vs 本地 Docker
  • Speech Databases of Typical Children and Children with SLI 数据集解读
  • Vue 中的 Class 与 Style 绑定详解1
  • 数据类型 string