当前位置: 首页 > 科技观察

BlindSide攻击利用推测执行绕过ASLR

时间:2023-03-18 18:07:05 科技观察

近日,史蒂文斯理工学院、苏黎世理工学院和阿姆斯特丹自由大学的研究人员发现了一种名为BlindSide的攻击技术,可用于构建绕过主流操作系统的ASLR漏洞利用(AddressSpaceLayoutRandomization,地址空间配置随机化)。BLINDSIDE攻击内存地址对攻击者来说非常重要。如果攻击者知道应用程序将在内存中执行什么代码,他们可以调整漏洞以针对特定应用程序并窃取敏感信息。ASLR的工作原理是将代码在内存中执行的位置随机化,可以有效应对缓冲区溢出攻击的安全防护技术。为了绕过ASLR,攻击者需要找到泄漏内存位置的漏洞,或者找到其他应用程序运行的合适位置,然后修改攻击代码来攻击内存地址空间。这两种攻击技术难度都很大,尤其是第二种攻击方式可能导致系统崩溃或被安全防护系统检测到。研究人员发现的新型BlindSide攻击将探针的行为置于推测执行过程中。推测执行是提高主流处理器性能的一种方式。在推测执行期间,CPU与当前计算线程并行运行一些操作。当主CPU线程执行到某个点时,推测执行会获取预先计算好的值并继续执行下一个任务,从而提高了整个计算操作的性能。推测执行期间获得的所有值都被丢弃,对操作系统没有任何影响。研究人员表示,提高CPU性能的相同过程也会放大常见软件中安全漏洞的严重性,例如推测性探测引入的内存损坏错误。BlindSide利用APP中的一个安全漏洞,将其应用于推测执行,可以反复探测内存,直到攻击者成功绕过ASLR。由于攻击发生在推测执行期间,探测失败和崩溃不会对CPU及其稳定性产生任何影响。攻击者需要做的就是利用系统中的内存损坏漏洞。在论文中,研究人员利用Linux内核中的一个缓冲区溢出漏洞来:利用BlindSide破解KASLR挂载可靠的ROP漏洞利用;使用BlindSide破坏任意随机化方案以安装模式数据漏洞,揭示根密码哈希值;·中断随机化和内核执行内存复制内核文本,并挂在可靠的ROP漏洞中。PoC视频可在以下网址找到:https://www.youtube.com/embed/m-FUIZiRN5o研究人员声称,攻击者可以使用BlindSide在不考虑ASLR的情况下有效实施盲目劫持。BlindSide攻击适用于不同的架构,研究人员在Intel和AMDCPU上对其进行了测试。此外,BlindSide攻击仍然适用于Spectre和Meltdown等具有固定推测执行攻击的CPU。在文章中,研究人员还提到了几种减轻BlindSide攻击的方法。本文翻译自:https://www.zdnet.com/article/new-blindside-attack-uses-speculative-execution-to-bypass-aslr/如有转载请注明原文地址