被 Bug 以及漏洞支配的恐惧,恐怕没有人能比研发人员更能感同身受了。
作者 | 屠敏
出品 | CSDN(ID:CSDNnews)
近两年间,想必作为全球知名的半导体公司 Intel 的研发团队承受着巨大的压力,先是经历了被诸多媒体称之为“史诗级行业芯片漏洞事件”之 Meltdown (熔断)与 Spectre(幽灵)的劫难;后又在 5G 调制解调器的研发上摔了跟头;如今又有最新的消息爆出,安全研究人员在英特尔芯片中再次发现一种严重的漏洞——微架构数据采样(Microarchitectural Data Sampling,简称 MDS),对此,不少人也将该漏洞叫做“ZombieLoad”(僵尸负载)。
再现“Meltdown 与 Spectre 身影”的 ZombieLoad
之所以 ZombieLoad 会引起安全研究人员的高度关注,是因为其与曾经影响了所有 iPhone、Android、PC 设备的 Meltdown 与 Spectre 有着诸多的相似之处。
我们都知道彼时不少芯片厂商为了提高 CPU 性能,从而在芯片上引入了两种特性,一种叫乱序执行(Out-of-Order Execution),另一种为推测性执行(Speculative Execution),如今这两种特性是现代处理器工作方式的重要组成部分:
其中,对于采用推测执行,最大的好处就是可以让应用程序或系统运行得更快、更高效。但让大家不容忽视的是,这也就造成了黑客可以利用 Meltdown 或 Spectre 漏洞,在应用软件未经任何授权下便可读取到英特尔处理器内核的信息,进而攻击者可获取到用户设备上的一些敏感数据,如密码、登录密钥、私人消息、邮件甚至是商业秘密文件。
如今,最新被研究人员发现的 ZombieLoad 漏洞,针对的也是英特尔芯片在引用两种特性作设计的缺陷,即可以使用推测性执行来诱骗英特尔的处理器抓取从芯片的一个组件转移到另一个组件的敏感数据,不过这与使用推测性执行来获取内存中的敏感数据的 Meltdown 不同,MDS 攻击专注位于芯片组件之间的缓冲区。
据英特尔官方介绍,虽然 MDS 攻击也是通过侧信道攻击的方式,但它的实现是由四种截然不同的漏洞共同组成。
事实上,这四种不同的 MDS 攻击都利用了英特尔芯片如何执行省时技巧的捷径。在上文推测执行的解释中,我们看到 CPU 在程序执行请求之前或猜测程序正在请求数据的过程中,经常跟随代码中的命令分支,以便获得先机。如果指令执行完成后发现用不上,那么系统会抛弃计算结果。(在不同条件下,芯片可以从三个不同的缓冲区中获取数据,因此研究人员可以进行多次攻击。)
此前,英特尔的芯片设计人员可能认为错误的猜测,即使提供敏感数据的猜测也无关紧要。于是,他们将这些结果抛弃了。
但其实这个漏洞,如同 Meltdown 和 Spectre 一样,攻击者可以通过处理器的缓存泄漏处理器从缓冲区获取的数据。整个过程,最多从一个 CPU 的缓冲区窃取几个字节的任意数据。但是倘若连续重复数百万次,攻击者可以开始窃取 CPU 正在实时访问的所有数据流。
与此同时,通过一些其他技巧,低权限攻击者可以发出请求,说服 CPU 将敏感数据(如密钥和密码)拉入其缓冲区,然后由 MDS 攻击将其吸出。这些攻击可能需要几毫秒到几小时,具体取决于目标数据和 CPU 的活动。
2011 年以后拥有英特尔芯片的设备危险!
据 Wired 报道,这一次的漏洞是由英特尔联合如奥地利大学、阿姆斯特丹大学、密歇根大学等欧洲多家大学,以及 Cyberus、360、Oracle 等安全软件公司的研究人员共同公布的。此前英特尔要求所有的研究人员对其研究成果保密,其实有些研究已经超过了一年,如今当它可以发布针对漏洞的修复程序时,这一事件才被爆出来。
当前,英特尔也正在试图淡化这一漏洞带来的影响,不过有研究人员警告道,这些漏洞代表了英特尔硬件的严重缺陷,可能需要禁用其部分功能,甚至某些公司的补丁也无济于事。
如今论其影响的范围,可追溯到 2011 年以后拥有英特尔芯片的所有计算机设备。不过,据悉,此次影响也仅局限于英特尔芯片,而 AMD 和 ARM 芯片不像早期的侧信道攻击那样易受攻击。
英特尔对此也表示,过去一个月最新发布的某些芯片型号已经包含了解决问题的方法。与此同时,微码的补丁将有助于清除处理器的缓冲区,防止数据被读取。
最新的漏洞对普通的用户意味着什么?
那么,这个漏洞对普通用户究竟意味着什么?
其实,对于个人用户而言,大家也不必太过惊慌。对此,安全研究人员格鲁斯解释道,“ZombieLoad 漏洞的出现并不意味着黑客或攻击者可以即刻接管用户的计算机,且进行驱动攻击,这个与去年的 Meltdown(熔断)与 Spectre(幽灵)两大漏洞相比而言,要比 “Spectre(幽灵)更容易触发”,但是“比 Meltdown(熔断)更难触发”。”
其实,想要通过该漏洞进行攻击,黑客需要具备足够的技能储备。
“但是,如果该漏洞利用代码在应用程序中编译或作为恶意软件提供,那么黑客也可以以此进行攻击,”格鲁斯补充道。
“其实,另也有很多方法可以入侵计算机并窃取数据。不过,当前对预测性执行和侧信道攻击的研究重点仍处于起步阶段。未来随着越来越多的调查结果曝光,数据窃取攻击有可能变得更容易利用和更简化。”
对于用户而言,想要避免或降低被攻击的风险,最好的做好就是,一旦有任何可用的补丁,记得及时安装。
我们是否可以继续信任英特尔的芯片?
当前,英特尔已发布微码以修补易受攻击的处理器,其中包括了 Intel Xeon、Intel Broadwell、Sandy Bridge、Skylake 和 Haswell 芯片。英特尔 Kaby Lake、Coffee Lake、Whiskey Lake 和 Cascade Lake 芯片也受到影响,以及所有 Atom 和 Knights 处理器。
基于此,英特尔也正面回应道:"关于微架构数据采样(MDS)安全问题,我们近期的很多产品已经在硬件层面得以解决了,包括很多第 8 代和第 9 代英特尔酷睿处理器、以及第 2 代英特尔至强可扩展处理器系列。
对其它受影响的产品,用户可以通过微代码更新、并结合今天发布的相应操作系统和虚拟机管理程序的更新获取安全防御。
我们在官方网站上也提供了更多信息,并一如既往的鼓励大家保持系统的及时更新,因为这是保持安全的最佳途径之一。我们在此要感谢那些与我们通力协作的研究人员、以及为此次协同披露做出贡献的行业合作伙伴们。”
除此之外,如苹果、微软、Google 等科技巨头们,也相继发布了补丁,希望将此作为抵御可能受到攻击的第一道防线。
据外媒 TechCrunch 报道,英特尔表示,与以前的补丁一样,微代码更新会对处理器性能产生影响。大多数修补后的消费者设备在最坏的情况下可能会受到 3% 的性能损失,在数据中心环境中则高达 9%。但是,其发言人表示,在大多数情况下,它不太可能引人注意。
漏洞并不可怕,只因技术本无罪
事实上,在硬件的设计与性能不断地优化与迭代下,安全防御功能肯定会由此逐步提升,但这并不意味着所有的设备就会足够的安全,而这也正如《我是谁:没有绝对安全的系统》中的经典语句所言,“人类才是系统中最大的漏洞。”
因此,对于身处数字信息化大爆炸时代的从业者,需铭记的是:技术本无罪,不要让其为人性的罪恶去买单。
参考:
https://zombieloadattack.com/
https://techcrunch.com/2019/05/14/zombieload-flaw-intel-processors/
https://www.intel.com/content/www/us/en/architecture-and-technology/mds.html
https://www.wired.com/story/intel-mds-attack-speculative-execution-buffer/
作为码一代,想教码二代却无从下手:
听说少儿编程很火,可它有哪些好处呢?
孩子多大开始学习比较好呢?又该如何学习呢?
最新的编程教育政策又有哪些呢?
下面给大家介绍CSDN新成员:极客宝宝(ID:geek_baby)
戳他了解更多↓↓↓
热 文 推 荐
☞ 唯一被图灵求婚的女人,与他并肩破译纳粹德国 Enigma 密码,拯救千万人生命!| 人物志
☞ 程序员专属小情话,哎呦,不错哦!| 程序员有话说
☞ @程序员,你已掉入能力陷阱!
☞普通家庭走出信息学才子,抱病参赛夺世界信奥亚军 | 人物志
☞英特尔再爆重大芯片漏洞,苹果谷歌微软相继中招!
☞Rust今天4岁啦, 为什么越来越多的知名项目用Rust来开发?
☞腾讯面试:一条SQL语句执行得很慢的原因有哪些?
☞商汤“变法”:推中小学AI教材,mini自驾车,要打造AI时代的「清明上河图」
☞刺激!华为程序员年薪200万 ?真相让人心酸!