查看原文
其他

关于这波 Intel CPU 漏洞,我见过最形象易懂的解释

2018-01-05 crossin Crossin的编程教室

新年刚到,科技圈就炸了!


2018年1月2日,Intel CPU 被爆出设计漏洞。AMD 和 ARM 芯片也有一定程度的影响。


漏洞带来的影响主要是:

  1. 用户级别权限的应用可以利用此漏洞访问到系统级别的内存。也就是说,一个普通程序,有可能拿到你电脑里的各种敏感信息,比如你的各种账号密码等。

  2. 这个漏洞是因芯片最初的设计造成的,目前的补救方法只能通过操作系统级别的补丁来修复。所以最近请及时安装系统更新。

  3. 系统补丁会对芯片性能带来不少下降,据目前测试下来约5%~30%。IO性能尤为明显。现在只能说,两害相较取其轻了。


由于是芯片设计级别的漏洞,因此目前存在市面上的决大多数电脑、手机都遭受波及。而受影响最大的,就是AWS、AZure、GAE、阿里云等云服务提供商了,估计近期都会进行重大更新。


而造成这么严重问题的原因到底是什么?


尽量简单来说:

  1. 计算机的数据都存储在内存中,但不允许随便访问。你访问了超过权限的内存,操作就会被拒绝。

  2. 程序是由大量指令组成的,为了提升执行效率,芯片会通过一定的机制,在前面指令还在等待的时候就执行后面的指令。

  3. 内存访问是需要耗时间的,为了提升性能,就有了『缓存』这种比内存更快的东西。之前访问过的内存内容会进入缓存,以便下次更快访问。


这个漏洞的核心就在于:故意制造一个非法的数据访问,由于①的存在,此操作会被拒绝。但可以利用芯片的机制②去创造条件,让它在还没被拒绝时提前执行。又因为③的效果,相关的数据可以借助缓存的特性留下痕迹。虽然最终这个操作还是会被拒绝,但通过分析不同地址的访问快慢,就可以反推出真实的敏感数据。


漏洞利用效果演示:

可以看到,你输入的密码可以被其他程序所获取。


关于此漏洞的技术细节、影响和后续更新,大家可以关注知乎上的问题:

如何看待 2018 年 1 月 2 日爆出的 Intel CPU 设计漏洞?

@楼宇 

https://www.zhihu.com/question/265012502/answer/288239171

@Allen Leung 

https://www.zhihu.com/question/265012502/answer/288199200

@dontpanic

https://www.zhihu.com/question/265012502/answer/288407097


NGA社区上的一篇帖子也解释的相当清楚,适合有计算机基础的同学了解:

[农企日常翻身] 专业角度说说这次的CPU漏洞,从原理到答疑

https://bbs.ngacn.cc/read.php?tid=13191205


看完详细的解释,不禁感叹漏洞利用之精妙,相比之下那些黑客电影中的桥段都黯然失色。


而在这篇帖子下面的评论里,我看到了本文标题所说,最形象易懂的解释:





  • 代码问题请在论坛 bbs.crossincode.com 上发帖提问

  • 点击文章最下方的“阅读原文”,查看更多学习资源

  • 别忘了将我们的文章转发朋友圈或在知乎上为我们的专栏点赞,你们的支持将会让编程教室做得更好:)




推荐阅读:

微信小游戏“跳一跳”,Python“外挂”已上线

平安夜,Python送你一顶圣诞帽 @微信官方

Python老司机给上路新手的3点忠告

【数据说话】当下的Python就业前景如何

Python有嘻哈:Crossin教你用代码写出押韵的verse

编程新手:看懂很多示例,却依然写不好一个程序

给伸手党的福利:Python 新手引导



欢迎加入

Crossin的编程教室

crossincode.com


  请把我们分享给身边爱学习的小伙伴 :)  

点击“阅读原文”,查看更多学习资源

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存