向右滑动:上一篇 向左滑动:下一篇 我知道了
广告

谷歌研究者:软件技术无法解决“幽灵”芯片漏洞

时间:2019-02-25 阅读:
“崩溃”(Meltdown)和“幽灵”攻击的发现无疑是2018年的重大安全事件。去年1月首次发现后,全年又出现了新的变种。这两种攻击都依靠处理器的理论架构行为与真实的事实行为之间的差异来发动。

据美国科技媒体Ars Technica报道,谷歌研究人员对“幽灵”(Spectre)攻击的范围和影响进行调查后,发表了一篇论文,认为类似于这样的漏洞可能会继续困扰处理器,而基于软件的防护技术会产生较高的性能成本。他们还认为,无论如何,软件都不足以防御这种攻击——一些“幽灵”漏洞似乎并没有有效的软件防御措施。因此,“幽灵”将成为未来的一个重要安全隐患,并没有直接的解决方案。

“崩溃”(Meltdown)和“幽灵”攻击的发现无疑是2018年的重大安全事件。去年1月首次发现后,全年又出现了新的变种。这两种攻击都依靠处理器的理论架构行为与真实的事实行为之间的差异来发动。

 

论文全文:https://arxiv.org/pdf/1902.05178.pdf

具体而言,所有的现代处理器都会进行推测执行,例如,它们会假设某个值从内存中读取,或者某个if条件是真是假,使之可以根据这些假设提前执行任务。如果假设正确,推测结果就会保留;如果假设错误,推测结果就会放弃,处理器则会重新计算。推测执行并不是处理器的架构特征,而是执行特征,因此应该在完全不可见的情况下执行程序。当处理器放弃错误的推测时,看起来就像这个推测从未发生过一样。

但“崩溃”和“幽灵”漏洞的研究人员发现,推测执行并非完全不可见。当处理器放弃推测结果时,错误推测会留下一些痕迹。例如,推测可能会改变处理器缓存中的数据。程序可以通过测量从内存中读取数值的时间来探测这些变化。

通过仔细构建,攻击者便可让处理器根据一些兴趣值进行推测,并使用缓存变化来揭露出推测值的实际情况。这就会对网络浏览器等应用构成威胁:可以利用恶意JavaScript来了解正在运行的进程的内存布局,然后使用这些信息来利用其他安全漏洞执行任意代码。

网络开发者认为他们可以在浏览器处理过程中构建安全沙盒,这样一来,脚本就无法了解其包含进程的内存布局。从架构角度来讲,这种假设似乎完全合理。但由于存在“幽灵”攻击,导致这些假设无法成立。

英特尔、苹果和其他采用ARM架构的芯片所面临的“崩溃”漏洞则是这种方式的一个可怕变体。它能让恶意程序从操作系统内核中提取数据。在发现这种漏洞后,操作系统已经进行了一些调整,将多数数据隐藏,使之无法被这种恶意程序发现。英特尔也对其处理器进行了专门的调整来解决“崩溃”问题,所以该公司最近的处理器已经不再需要激活这些变化。

“幽灵”更加难以应对。已经出现了很多软件技术阻止处理器通过推测方式执行敏感代码,或者限制信息通过推测执行方式泄露出去。

谷歌研究人员发现,这些软件措施有很多不完善的地方,例如在从内存加载许多值之后便会屏蔽所有的推测,虽然可以屏蔽很多攻击,但实际使用中却效果不佳。研究人员还尝试修改Chrome V8 JavaScript引擎,但却会导致性能下降三分之一或五分之一。其他措施也会遭遇类似的问题。

但所有措施都存在一个问题:没有一种方式能够屏蔽所有的“幽灵”变种,因此需要将许多技术结合起来。而由于这些技术不能任意结合,所以单纯是找到合适的技术组合也是一个巨大的挑战。另外,谷歌还设计了一个通用目的“幽灵”家族攻击,无法用目前的任何技术实现防御。

“幽灵”攻击的一项重要因素是衡量缓存变化的时间系统。有一种想法认为,可以让应用使用的时钟不那么精确。这种理论认为,如果需要以几纳秒的长度来衡量缓存差异,那么以毫秒为精度单位可能就会太过粗糙,无法发动攻击。但研究人员却设计了一种技术来放大这种时间差异,而这种放大效果可以战胜这种让时间系统变得粗糙的防御方式。

正因如此,该公司认为不可能完全依靠软件技术来防御“幽灵”攻击。硬件调整或许可以实现这种效果,但这目前仍未得到证实。

(来源:新浪科技)

本文为EDN电子技术设计 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
您可能感兴趣的文章
  • AI如何改变边缘计算的未来 每个物联网设备都会持续收集数据,因此需要快速分析,达到实时决策,特别是对于自动驾驶汽车、电网、远程手术、石油钻井平台,甚至军用无人机等应用。
  • 细数工业自动化和机器人技术的创新 现在工业自动化的最终目的是要在工厂里做到员工越少越好,甚至做无人工厂。但即使是做无人工厂,里面也未必没有人,哪怕有一个员工在里面,自动化也需要有安全性,以保证员工不会受到伤害。
  • 如何破解两把“剪刀差”加速AI落地?Xilinx给出了答案 AI的本质就是高性能计算,就像电力一样是一项通用能力,是能对所有行业进行产业升级以及产品迭代起促进作用的存在。
  • 绕着汽车转一圈,你能想到哪些电子技术? 不论是车厂、系统集成商还是半导体供应商,每个厂商的PPT都有一个共同的口号:更安全、更环保绿色、更智能。这些技术和方向的实现需要依靠大量高精度的传感和测量。这就是“三化”背后一个非常重要的基础性工作。可能很多人了解人工智能这些数字类的技术。但数字类的技术再牛,也需要有很好的信号源。
  • AI硬件加速需要详细的需求计划 从云端的大数据处理到边缘端的关键字识别和图像分析,人工智能(AI)应用的爆发式增长,正在推动专家们争先恐后地开发最佳架构来加速机器学习(ML)算法的处理。由于新兴的解决方案多种多样,因此在选择硬件平台之前,设计人员必须对应用及其需求进行明确定义。
  • 美国为何能重夺超算第一?揭5个关于“顶点”的事实 自2013年6月中国超级计算机首次成为最强超算之后,美国就不再拥有世界上最强大的超算。全球超算TOP500组织的超级计算机官方排名将在本月底更新,“顶点”有望结束这一局面。
相关推荐
    广告
    近期热点
    广告
    广告
    广告
    可能感兴趣的话题
    广告