探索 RPC 运行时中的三个远程代码执行漏洞

介绍

MS-RPC 是 Windows 网络中使用率较高的协议,许多服务和应用程序都依赖它。因此,MS-RPC 中的漏洞可能会导致严重后果。Akamai 安全情报小组在过去一年中一直致力于 MS-RPC 研究。我们发现并利用了漏洞,构建了研究工具,并记录了该协议的一些未记录的内部细节。

虽然之前的博客文章重点关注服务中的漏洞,但这篇文章将研究 RPC 运行时(MS-RPC 的“引擎”)中的漏洞。这些漏洞类似于我们在 2022 年 5 月发现的漏洞

整数溢出模式

这三个新漏洞有一个共同点——它们的存在都是因为在三个数据结构中插入时出现了整数溢出:

  1. SIMPLE_DICT(仅保存值的字典)
  2. SIMPLE_DICT2(同时保存键和值的字典)
  3. 队列

所有这些数据结构都是使用动态数组实现的,每次数组满了之后,数组就会增大。这是通过分配当前数组所分配内存的两倍来实现的。这种分配很容易受到整数溢出的影响。

图 1 显示了 RPC 运行时的反编译代码。它显示了插入 SIMPLE_DICT 结构的过程以及可能触发整数溢出的易受攻击的代码行(突出显示&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值