英特尔CPU的缺陷可以帮助攻击者击败ASLR利用防御
研究人员已经发现,英特尔“S HASWEL CPU中的一个功能可以滥用来可靠地击败所有主要操作系统中存在的反开采技术。
由纽约州立大学和滨江加州大学的三位研究人员开发的技术可用于绕过地址空间布局随机化(ASLR),本周在第49届IEEE / ACM国际研讨会上展示台北的微体建筑。
ASLR是操作系统使用的安全机制,以便随机化通过过程关键区域使用的内存地址,使攻击者不知道注入其漏洞柯克基码的位置。
ASLR用于防止内存损坏错误,例如堆栈和堆溢出,而是从任意代码执行,而不是崩溃。一旦利用了这样的漏洞,需要在记忆中的位置注入恶意代码,其中目标进程或OS内核本身将作为正常操作的一部分执行。
在本文中,这三个研究人员表明,分支目标缓冲器(BTB),CPU分支目标预测器使用的缓存机制,可以通过触发不同用户进程或进程和内核之间的BTB碰撞来泄漏ASLR地址。分支预测机制用于现代CPU以优化性能。
“BTB存储最近被执行的分支指令的目标地址,从而可以直接从BTB查找获得那些地址,以获取下一个周期中目标的指令,”研究人员在其论文中解释。“由于BTB由在同一核心执行的几个应用程序共享,因此可以通过BTB侧通道从一个应用程序泄漏到另一个应用程序。”
研究人员在配备英特尔Hasware MicroArchitecture CPU的计算机上展示了基于BTB的ASLR旁路,并运行最近的Linux内核(版本4.5)。他们的攻击可以使用大约60毫秒的BTB碰撞可靠地恢复内核ASLR。
研究论文提出了基于软件和基于硬件的缓解,可以防止未来的BTB的侧通道攻击或硬化当前ASLR实现。
攻击者目前有其他绕过ASLR的方法,但通常需要找到额外的内存泄漏漏洞,并与原始内存损坏漏洞一起链接。由于近年来的软件安全改进,今天的大多数远程代码执行攻击都需要使用链接的漏洞。
英特尔没有立即回复评论请求。