Meltdown攻击
处理器A级漏洞MELTDOWN(熔毁)和SPECTRE(幽灵)分析报告
AntiyLabs • 2018年01月05日 • 漏洞 • 阅读 1162
一、概述安天应急处理中心在2018年1月4日,针对Google公司的Project Zero等安全团队披露出的英特尔等处理器芯片存在非常严重的安全漏洞,发布了A级漏洞风险通告,并提醒该漏洞演化为针对云和信息基础设施的A级网络安全灾难。相关漏洞利用了芯片硬件层面执行加速机制的实现缺陷实现侧信道攻击,可以间接通过CPU缓存读取系统内存数据。漏洞Meltdown(熔毁)因“融化”了硬件的安全边界而得名,...

一、概述
安天应急处理中心在2018年1月4日,针对Google公司的Project Zero等安全团队披露出的英特尔等处理器芯片存在非常严重的安全漏洞,发布了A级漏洞风险通告,并提醒该漏洞演化为针对云和信息基础设施的A级网络安全灾难。相关漏洞利用了芯片硬件层面执行加速机制的实现缺陷实现侧信道攻击,可以间接通过CPU缓存读取系统内存数据。漏洞Meltdown(熔毁)因“融化”了硬件的安全边界而得名,漏洞Spectre(幽灵)因其手段的隐蔽性而得名。

该漏洞是一个足以动摇全球云计算基础设施根基的漏洞,其意味着任何虚拟机的租户或者入侵了成功一个虚拟机的攻击者,都可以通过相关攻击机制去获取完整的物理机的CPU缓存数据,而这种攻击对现有虚拟化节点的防御机制是无法感知的。同时由于该漏洞的机理,导致其存在各种操作系统平台的攻击方式,因此尽管这一漏洞本身只能读取数据,不能修改数据,但由于其获取的数据中有可能包括口令、证书和其他关键数据,包括能够完整Dump内存镜像,因此这个漏洞比一般性的虚拟机逃逸对云的危害更大。尽管当前全球主要云服务商均在积极应对这一漏洞的影响,但鉴于这些云服务体系的庞大而复杂,以及大面积补丁本身所面临的复杂度和风险,漏洞利用POC已经发布并验证成功,因此这次漏洞修补已经成为一场时间赛跑。在这个过程中,攻击者所获取到的数据,将会沉淀出对于关键数据和隐私泄露、登陆凭证被窃取导致连锁攻击等次生灾害。

鉴于大量政企机构和行业进行了私有云的建设,而私有云的安全防御和补丁升级可能更弱。因此后续需要深度注意利用该漏洞在私有云中进行的攻击。

同时,该漏洞对于攻击桌面节点同样有巨大的攻击力,其大大提升了以浏览器等为攻击入口的攻击成功率。包括使传统的使用非超级用户来降低网络风险的安全策略失效。

当前已经公布的漏洞POC对Intel系列CPU有效,但鉴于相关执行加速机制是现代处理器的通用技术,因此所有处理器均需要分析相关风险。

安天在第一时间向管理部门提交威胁通报,并根据管理部门的要求正在进一步做深度的分析验证和应对工作。并在1月4日发出了公开漏洞通告。鉴于相关漏洞机理较为复杂,涉及到体系结构、操作系统,特别是CPU的核心运行机制,为使主管部门和用户深入了解漏洞细节,做好防护,安天组织内部公益翻译和技术团队对披露这两个漏洞的长篇关键论文文献《Meltdown》和《Spectre》进行了翻译,并在1月4日发布了《Meltdown》的初稿,《Spectre》也在紧张翻译工作中。

二、漏洞介绍
针对英特尔处理器涉及到两种攻击方法,分别为Meltdown和Spectre,Meltdown涉及CVE编号CVE-2017-5753和CVE-2017-5715,而Spectre涉及CVE编号CVE-2017-5754。

Meltdown破坏了位于用户和操作系统之间的基本隔离,此攻击允许程序访问内存,因此其他程序以及操作系统的敏感信息会被窃取。这个漏洞“熔化”了由硬件来实现的安全边界。允许低权限用户级别的应用程序“越界”访问系统级的内存,从而造成数据泄露。

Spectre则是破坏了不同应用程序之间的隔离。问题的根源在于推测执行(speculative execution),这是一种优化技术,处理器会推测在未来有用的数据并执行计算。这种技术的目的在于提前准备好计算结果,当这些数据被需要时可立即使用。在此过程中,英特尔没有很好地将低权限的应用程序与访问内核内存分开,这意味着攻击者可以使用恶意应用程序来获取应该被隔离的私有数据。

三、影响范围
本次安全事件影响到的范围很广,包括:
处理器芯片:英特尔为主、ARM、AMD,对其他处理器同样可能存在相关风险。
操作系统:Windows、Linux、macOS、Android
云服务提供商:亚马逊、微软、谷歌、腾讯云、阿里云等
各种私有云基础设施。
桌面用户javascript:;可能遭遇到结合该机理组合攻击。
利用POC:O网页链接

详情:O网页链接收起全文d
  • 这是:linux下编译好的C,运行后看不懂,可以扔到windows下,用wireshark打开。

     
    我的微博:夜残_荡

Meltdown攻击的更多相关文章

  1. 为什么树莓派不会受到 Spectre 和 Meltdown 攻击

    最近爆出来的 Intel CPU 的底层漏洞可谓是影响巨大,过去20年的电脑都可能会受影响.前几天 Raspberry Pi 的官方 Twitter(@Raspberry_Pi) 转推了这篇文章,通过 ...

  2. CPU Meltdown和Spectre漏洞分析

    一.背景: 1月4日,国外爆出了整个一代处理器都存在的灾难性漏洞:Meltdown和Spectre. 几乎影响了全球20年内所有cpu处理器:这两个漏洞可以使攻击者通过利用并行运行进程的方式来破坏处理 ...

  3.  Meltdown论文翻译【转】

    转自:http://www.wowotech.net/basic_subject/meltdown.html#6596 摘要(Abstract) The security of computer sy ...

  4. intel:spectre&Meltdown侧信道攻击(一)

    只要平时对安全领域感兴趣的读者肯定都听过spectre&Meltdown侧信道攻击,今天简单介绍一下这种攻击的原理( https://www.bilibili.com/video/av1814 ...

  5. intel:spectre&Meltdown侧信道攻击(四)—— cache mapping

    前面简单介绍了row hammer攻击的原理和方法,为了更好理解这种底层硬件类攻击,今天介绍一下cpu的cache mapping: 众所周知,cpu从内存读数据,最开始用的是虚拟地址,需要通过分页机 ...

  6. intel:spectre&Meltdown侧信道攻击(三)—— raw hammer

    今天介绍raw hammer攻击的原理:这次有点“标题党”了.事实上,raw hammer是基于DRAM内存的攻击:所以理论上,只要是用了DRAM内存的设备,不论是什么cpu(intel.amd,或则 ...

  7. intel:spectre&Meltdown侧信道攻击(二)

    上面一篇介绍了spectre&meltdown基本原理和简单的demo方案,今天继续学习一下该漏洞发现团队原始的POC:https://spectreattack.com/spectre.pd ...

  8. intel:spectre&Meltdown侧信道攻击(五)—— DRAM address mapping

    前面介绍了row hammer,理论上很完美,实际操作的时候会面临很尴尬的问题:内存存储数据最小的单位是cell(就是个电容,充电是1,放电是0),无数个横着的cell组成row,无数个竖着的cell ...

  9. Meltdown Attack

    1. 引言 2018年1月3日,Google Project Zero(GPZ)团队安全研究员Jann Horn在其团队博客中爆出CPU芯片的两组漏洞,分别是Meltdown与Spectre. Mel ...

随机推荐

  1. MySQL学习(一) 概述

        MySQL是一个开源的数据库系统,近些年来使用率越来越高,目前属于Oracle公司所有,其拥有MySQL的商标,属于主流版本,由于其开源特性,出现了一些分支,常见的有MariaDB.Perco ...

  2. 写给自己的web总结——关于html的知识总结

    相信每个前端工程师初识前端之时,最先接触的都是html吧! html的全称是hyperText markup language, 超文本标记语言,在网页中所有的文字,图片,架构等都是由html来编写的 ...

  3. less基础语法

    变量 //->LESS代码 @link-color: #428bca; @link-color-hover: darken(@link-color, 10%); a { color: @link ...

  4. js验证input输入框(字母,数字,符号,中文)

    [javascript]代码库 <h1>js验证输入框内容</h1> <br /> <br /> 只能输入英文 <input type=" ...

  5. php-基础知识-apache服务器

    一.支持php的服务器有:iis.apache.lighted(德国制造).nginx(俄罗斯制造,功能强大[反向代理.服务器集群.流媒体服务器........].轻量) 二.今天主要分享apache ...

  6. 使用图片地图减少HTTP请求数量

    前言 最近在看<高性能网站建设>,记录一下所学. 现在很多网站都是图片形式的导航,点击图片跳转到对应的链接.如果导航项目很多的话,图片的数量就会很多,每需要加载一张图片就会多一个HTTP请 ...

  7. JavaScript的DOM编程--11--插入节点

    插入节点: 1). insertBefore(): 把一个给定节点插入到一个给定元素节点的给定子节点的前面 var reference = element.insertBefore(newNode,t ...

  8. Effective Java 第三版——16.在公共类中使用访问方法而不是公共属性

    Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...

  9. sql server 权限

    -----是否存在有效的登录账号:是否被禁用,sql login还有:密码是否过期,是否被锁定 select is_disabled, loginproperty(name,'Isexpired') ...

  10. vue2 computed set与get函数

    大家都知道computed简单的使用方法,这儿只分享一下setter和getter用法: setter:设置值时触发. getter:获取值时触发,与setter是没有必然联系的. <templ ...