Windows 架构带来了一个新的惊喜——或者说,在一项旧技术中发现了一个新的攻击面。
Windows 系统中的进程间通信依赖于 RPC(远程过程调用),这是一种复杂的机制,多年来不断有漏洞被曝出。安全研究员 Khaydar Kabibo 长期深耕 RPC 安全,他发现了一种新的本地权限提升架构途径,并将其命名为 PhantomRPC。
- 该技术的本质:攻击者设置一个伪造的 RPC 服务器,该服务器使用与合法服务器相同的 UUID/端点响应客户端请求,接着调用
RpcImpersonateClient,使服务器线程能够模拟调用客户端的安全上下文,最高可至 SYSTEM。
- 关键条件:攻击者的进程必须拥有
SeImpersonatePrivilege 权限(通常适用于网络服务或本地服务账户)。如果合法的 RPC 服务器不可用(例如对应服务被禁用),则有机会将权限提升到 SYSTEM 或管理员级别。
这并非特定服务(例如 Potato 系列)的漏洞,而是由于 RPC 运行时未验证 RPC 服务器的合法性,导致其他进程可将同一端点注册为合法服务器。在某些场景下,还需满足额外的环境条件(例如存在特定的 GPO 配置)。
所有提权路径均已在安装当时最新更新的 Windows Server 2022 与 Windows Server 2025 上完成测试。作者指出,这是一个架构层面的问题,因此该攻击手法也可能被其他 Windows 版本利用。
在补丁发布前,可采取的缓解措施:
- 尽量减少
SeImpersonatePrivilege 在非标准/自定义流程中的使用,如非必要则直接移除;
- 如条件允许,启用基于 RPC 的合法服务,使其 RPC 端点被合法服务器占用;
- 启用 ETW 监控 RPC 事件,并跟踪高权限客户端引发的
RPC_S_SERVER_UNAVAILABLE 错误,以便在实际提权前检测到冒充尝试。
因此,PhantomRPC 为 Windows RPC 开辟了一个新的攻击面,需要管理员与应用程序开发人员持续关注。
更多详细信息,包括代码示例和利用方案,可参阅 PhantomRPC:Windows RPC 中的一种新的权限提升技术。
该报告同样被列入今天在新加坡举办的 Black Hat Asia 2026 大会议程中:相关议题。
更多 Windows 安全技术交流,欢迎前往云栈社区继续探讨。
|