Kasper,Linux 内核中推测代码的设备扫描器

一群人 阿姆斯特丹自由大学的研究人员透露 通过一篇博客文章,一个名为 “卡斯珀” 这突出表明它是 旨在识别代码片段 在 Linux 内核中可用于利用 Spectre 类漏洞 由处理器的推测性代码执行引起的。

对于那些不知道此类攻击的人,他们应该知道 Spectre v1 等类漏洞允许确定内存的内容,特权代码中需要特定的脚本(小工具),从而导致指令的推测执行。

为了优化, 处理器开始以推测模式运行此类设备或者,然后确定分支预测没有被证明并将操作回滚到它们的原始状态,但是在推测执行期间处理的数据位于缓存和微架构缓冲区中,并且可以通过第三方使用各种剩余数据确定方法进行提取派对频道。

小工具扫描工具 基于模式 以前可用 针对 Spectr 漏洞e 显示出非常高的误报率, 虽然丢失了许多真实的小工具(实验表明,这些工具检测到的 99% 的小工具不能用于攻击,33% 的工作小工具不是观察到的能够导致攻击的设备)。

介绍 Kasper,一种瞬态(或推测性)执行设备扫描程序。 它使用损坏分析策略对能够在瞬态路径中利用任意软件/硬件漏洞的攻击者进行建模。 

关于卡斯帕

为了提高质量 识别有问题的设备, Kasper 对攻击者可以使用的漏洞进行建模 在 Spectre 级攻击的每一步:对问题进行建模以允许使用 LVI 级攻击进行数据控制(例如,将攻击者数据替换为微架构结构以影响后续推测执行),获得对敏感信息的访问权(例如,当缓冲区超出范围或内存被释放后使用),并泄漏敏感信息(例如,通过解析处理器缓存的状态或使用 MDS 方法)。

对能够控制数据(例如,通过内存按摩或 LVI 值注入)、访问秘密(例如,通过越界访问或释放后使用)和泄露这些秘密(例如,通过基于缓存的 MDS-基于或基于端口竞争的隐蔽通道)。 

在进行测试时, 内核联系运行时库 通过卡斯珀 并验证它们是否在 LLVM 级别工作。 在验证期间,推测性代码执行由检查点恢复机制模拟,该机制专门执行错误预测的代码分叉,然后返回到分叉开始之前的原始状态。

Kasper 还尝试对各种软件和硬件漏洞进行建模。,分析架构和微架构效果的影响,并对可能的攻击者行为进行模糊测试。 对于执行流程的分析,使用 Linux 内核的 D​​ataFlowSanitizer 端口,对于模糊测试,使用 syzkaller 包的修改版本。

结果,Kasper 在高度强化的 Linux 内核中发现了 1.379 个以前未知的设备。 我们通过展示其中一种设备的端到端概念验证漏洞来证实我们的发现。

在使用 Kasper 扫描 Linux 内核时,识别出 1379 个以前未知的设备,这可能导致在推测性执行指令期间发生数据泄漏。

值得注意的是,也许只有其中一些可以提出真正的问题,但为了表明存在真正的危险,而不仅仅是理论上的危险,针对有问题的代码片段之一开发了一个利用的工作原型,这导致内核内存信息泄露。

最后 如果您有兴趣了解更多有关它的信息 关于卡斯帕,你应该知道 源代码 它是在 Apache 2.0 许可下分发的。

数据来源: https://www.vusec.net


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。