分享

英特尔再爆重大安全漏洞:处理器几乎全中招!

 昵称11935121 2018-08-16

《一碳科技》8月15日消息,据外媒报道,德国的计算机研究人员发现英特尔处理器存在一个新的漏洞,暂时被命名为“预兆”,该漏洞为2018年1月份发现的”Spectre(幽灵) ”、“Meltdown (熔化)”的衍生,该漏洞几乎存在于英特尔所有的处理器当中,如果被攻击者恶意利用,地球上的每一台电脑都无一幸免!

英特尔再爆重大安全漏洞:处理器几乎全中招!

为什么说是无一幸免呢?首先我们先来了解一项技术——分支预测,分支预测技术是处理器厂商用来优化处理器处理速度的一项技术,该技术通俗一点来理解就是:“用处理器空闲的资源,提前去处理一些指令。这些指令可能是没用的,也可能是有用的“预测”体现在这里)”,Spectre(幽灵)类似于分支预测漏洞。

英特尔再爆重大安全漏洞:处理器几乎全中招!

​现在,市面上主流的处理器生产厂商都使用这种技术,包括AMD,ARM,Intel等,而最可怕的就是这里,AMD,ARM,Intel这三家厂商几乎包揽了全球的计算机处理器市场,其中Intel和AMD都使用X86架构,几乎“全军覆没”,ARM使用了ARM架构,受影响较小。

英特尔再爆重大安全漏洞:处理器几乎全中招!

▲这两个漏洞其实在2017年就发现过

这两个漏洞的ID分为CVE-2017-5754(Meltdown)和CVE-2017-5753 (Spectre ),由此可见,这两个漏洞早已在2017已经被发现。

英特尔再爆重大安全漏洞:处理器几乎全中招!

讲到这两个漏洞,就必须了解一下乱序执行!

以前的处理器一般都是按照编写的指令一条一条按顺序执行的,但这样导致处理器的资源不能充分的利用,处理速度降低,所以研究人员开发出了一种新的技术——乱序执行

我们来做一个简单的假设,如果你现在要泡一壶茶,通常的步骤是这样的:洗壶、烧开水、洗壶、洗茶、拿茶叶、泡茶。那么,如果用乱序执行技术来执行这些步骤是怎么样的呢?

英特尔再爆重大安全漏洞:处理器几乎全中招!

图片长度代表时间

现在,我们先洗壶,然后烧开水、洗壶、洗茶这三件事情一起进行,紧接着拿茶叶、泡茶。这样一来,“泡茶”这一事件的执行时间就减少很多了,这就是乱序执行技术的好处,但是要将它运用到处理器上面可不是一件简单的事情,因为处理器可不明白哪些事情是可以一起进行,哪些事情是要分开进行的

英特尔再爆重大安全漏洞:处理器几乎全中招!

图片长度代表时间

▲在处理器中是怎样的?

我们举一个简单的例子(小编水平有限,请谅解),请看如下C语言代码:

英特尔再爆重大安全漏洞:处理器几乎全中招!

处理器按照正常的执行顺序是这样的:声明一个变量A并赋值、声明一个B变量并将A值的赋给它,声明一个C变量并赋值。那么按照分乱序执行技术是怎样执行的呢?

我们仔细观察一下,第二步必须在第一步执行完之后才能开始执行,因为第二步中的B的值是由第一步中A的值决定的,他们两个存在“制约关系”,而第三步则是声明C变量并赋值,不论第一步或第二步是否执行完都可以执行,所以,按照分支预测技术的思想,第一步和第三步指令可以先同时发送到两个逻辑单元去执行,然后在返回执行第二步。

无论执行的步骤怎样,最终的结果都是一样的,只不过是所用的所用的时间不同而已。

英特尔再爆重大安全漏洞:处理器几乎全中招!

▲Spectre 漏洞就是利用了分支预测技术的漏洞

分支预测技术跟乱序执行相类似,分支预测技术极大地提升了处理器的处理速度,但副作用是带来了一些严重的漏洞,并且这些漏洞跟软件、硬件无关,而是跟处理器的架构有很大关系,所以在技术层面上根除这种漏洞是比较困难的,好在英特尔公司都及时发布相应的安全补丁,避免了重大事故的发生。

英特尔再爆重大安全漏洞:处理器几乎全中招!


对计算机编程有兴趣的可以关注《一碳科技》哦,共同进步!不定时更新各种编程案例、教程,千万别错过了!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多