Linux 内核受到新的 SLUBStick 跨缓存攻击的影响

一种名为 SLUBStick 的新型 Linux 内核跨缓存攻击,将有限的堆漏洞转化为任意内存读写能力的成功率高达 99%,让研究人员能够提升权限或逃离容器。

该发现来自奥地利格拉茨技术大学的一组研究人员,他们演示了使用 32 位和 64 位系统中的 9 个现有 CVE 对 Linux 内核版本 5.9 和 6.2(最新版本)进行攻击,显示出很高的通用性。

此外,此次攻击可与所有现代内核防御措施(如监控模式执行保护 (SMEP)、监控模式访问保护 (SMAP) 和内核地址空间布局随机化 (KASLR))配合使用。

研究人员将展示在启用了最先进防御功能的最新 Linux 中如何实现权限提升和容器逃逸。同时,发布的技术论文包含有关此次攻击和潜在利用场景的所有细节。

SLUBStick 详细信息

Linux 内核高效且安全地管理内存的一种方法是,为不同类型的数据结构分配和取消分配内存块(称为“slab”)。

此内存管理流程中的缺陷可能允许攻击者破坏或操纵数据结构,这称为跨缓存攻击。然而,这些攻击大约有 40% 的时间是有效的,并且通常迟早会导致系统崩溃。

SLUBStick 利用堆漏洞(例如双重释放、用户释放后或越界写入)来操纵内存分配过程。

333

研究人员实验中成功利用的 CVE,来源:stefangast.eu

接下来,它使用定时侧通道来确定内存块分配/释放的确切时刻,从而允许攻击者预测和控制内存重用。

使用这些时间信息可将跨更改利用的成功率提高到 99%,从而使 SLUBStick 非常实用。

444

测量成功率,来源:stefangast.eu

将堆漏洞转换为任意内存读写原语分为三个步骤:

  1. 释放特定的内存块并等待内核重新使用它们。
  2. 以可控的方式重新分配这些块,确保它们能够重新用于页表等关键数据结构。
  3. 一旦回收,攻击者就会覆盖页表条目,获得读取和写入任何内存位置的能力。
555

篡改数据,来源:stefangast.eu

想要深入研究 SLUBStick 并试验格拉茨大学研究人员使用的漏洞的人可以在研究人员的 GitHub 存储库中找到它们。


转自军哥网络安全读报,原文链接:https://mp.weixin.qq.com/s/PpXosWa7BfbqqcxYzcLwhA

© 版权声明
THE END
你的支持是我们在网空安全路上的驱动力!
点赞10 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码

    暂无评论内容