其他

每年总有这么一两个漏洞让我们泪流满面

2018-01-04 小明 GeekPwn


度过了艰难的 2017 年(英特尔产品两次被爆存在重大安全漏洞)之后,英特尔 CEO Brian Krzanich(上图)恐怕只恨自己手上为什么还有 25 万股(这是英特尔公司要求 CEO 必须持有的最低股数)。


问题出在哪里?


本周三,谷歌 Project Zero 发文介绍他们和其他几个国家的学术机构共同发现的安全问题,由于一个名为“推测执行"(speculative execution)的技术,他们找到三种让恶意代码控制系统的方法,可以说漏洞影响了几乎所有处理器,不仅英特尔,AMD 和 ARM 也会遭受攻击。


漏洞直接影响 Windows 、Linux、MacOS 等操作系统。正如不少媒体报道的标题:1995 年之后的系统都受影响


“安全天团” Project Zero 出手


让我们回到 2017 年,谷歌 Project Zero 及多个高校的研究者联合发现,现代微处理器所采用提高性能的“推测执行”技术存在安全问题。

当一个处理器采用推测执行而非严格根据任务顺序执行时,它要预测后续可能需要进行的计算,因此它能够提前、并行地解决问题。结果当然是 CPU 浪费了精力进行了一些不必要的计算,但是完成命令的速度却提升了。

而问题就出在这里了。现代处理器硬编码中采用了推测执行——它们检查权限失当而且还泄露那些没有结束运行的命令信息。



真是糟糕了!存储在内核内存中受到保护的用户态程序可能会失窃。从密码到存储的所有文件内容可能都面临危险。


“崩溃”和“幽灵”


刚刚我们提到了研究者发现了三种攻击模型,据格拉茨科技大学的论文称,一种被命名为“崩溃”(Meltdown),而另外两种关系密切的被统称为“幽灵”(Spectre)。

现在有人为“崩溃”和“幽灵”建立了网站 spectreattack.com ,对于二者的简短描述摘录如下:

崩溃


"崩溃”破坏了用户态应用程序与操作系统之间最基本的隔离。攻击造成程序可以访问内存,及其他程序与操作系统间的“对话”。


如果你的系统尚未进行补丁,那么你的信息已经不安全了。“崩溃”不仅针对个人电脑,对于云计算基础设施同样适用。


幽灵


“幽灵"打破了不同应用程序之间的隔离。让攻击者能够让遵循了最佳实践的“无错”程序泄露它们的秘密。


“幽灵”比“崩溃”更难进行漏洞利用,同时也更加难以进行漏洞缓解。但是通过软件补丁能够对已知的利用手段进行防御。



“通俗点说,一个低权限的用户用一段托管在网页上的 JavaScript 代码,就可以访问内核内存,”ZDNet 写道。

TechCrunch 则说:“另一个糟糕的情况,便是使用云服务的用户能够在看到其他用户的业务。”


硬件漏洞升级能解决吗?


在硬件水平似乎尚无真正修复“崩溃”和“幽灵”的方法。对于媒体和用户的穷追猛打,股价盘中一度跌 7% 的英特尔除了大怼一些媒体“有失偏颇”的报道之外,表示会在下周通过负责任的方式披露该安全问题,提供更新来缓解漏洞的有关利用。


目前, Linux 已经发布了漏洞修复,微软计划在周四发布漏洞补丁。根据 Linux 和 Windows 修复后的测试发现,最高会导致系统处理性能降低 30%。


由于数据中心处理器几乎是英特尔一家独霸,此次受到影响最大的包括亚马逊、微软、谷歌全球最重要的三大云计算厂商,《新智元》援引业内人士评论:用“致命打击”来形容这一漏洞毫不夸张。

Project Zero 表示,将在 1 月9 日各方补丁准备就绪之后发布完整报告。推特则出现用户高呼:“届时来不及修复的那些厂商、用户,就等着被‘黑帽子’血洗吧!”


用户,你该做什么?

如果你不是相关从业者,那就可以摸摸自己笔记本上的“INTEL 标志”乖乖等着升级!


如果你是相关从业者,大概也就没时间看文章,赶紧撸代码去吧!


相关资料

*谷歌 Project Zero 博客:https://googleprojectzero.blogspot.com/

*Meltdown and Spectre 主页(包含了各大厂商补丁链接):https://meltdownattack.com/

*GIZMODO 报道:https://gizmodo.com/what-we-know-so-far-about-meltdown-and-spectre-the-dev-1821759062


GeekPwn 公众号菜单可以看比赛视频啦!


往期精选

GeekPwn2017 上海站  精彩回顾

GeekPwn2017 硅谷站  大咖云集

黑客 VS AI 人工智能安全挑战赛


GeekPwn2018 选手招募现已启动

长按二维码关注哟


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

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