meltdown漏洞解释

我刚刚阅读了有关“ Meltdown” CPU安全漏洞的白皮书,因为我很好奇这里到底发生了什么。 白皮书对此进行了详细说明,但由于篇幅较长且学术性强,因此我认为应该有一个更简单的概述。

Meltdown攻击是绕过许多现代CPU的安全检查的一种巧妙方法,它允许从未修补操作系统上的任何进程读取内核模式内存。

本文介绍了其实际工作原理-您可以在Meltdown网站和其他地方有关这些漏洞的影响的信息。

首先,将其称为“ bug”(尽管有很多)可能有点夸大其词-CPU的功能与广告宣传的一样。 问题是有人想出了如何读取由操作避免的副作用的方法。

接下来是一些技术性知识,但我将尝试尽可能简单地进行解释。 当然,我已经掩盖了细节-这里的目的只是从概念上传达其工作原理。

在找到问题的实际原因之前,您需要了解一些先决条件。

先决条件#1-CPU内存缓存

CPU高速缓存是CPU上的一块内存,用于存储最近访问的数据页。 因为这些页面直接缓存在CPU上,所以访问它们的速度比必须一直回到主内存的速度要快。

当CPU从主内存中读取数据时,它将在CPU缓存中缓存该页面的副本。 下次如果需要缓存页面时,它需要从主内存中读取数据,它可以从速度更快的CPU缓存中加载该值。

高速缓存中的每个页面为4096字节,并且高速缓存足以存储其中的许多页面(取决于CPU)

前提条件2-乱序执行

每个CPU内核都有多个执行单元,每个执行单元都可以执行不同类型的操作。

例如:一个Intel i7具有17至20个执行单元— 2x整数伪指令,1x除法,1x装载存储器,1x存储存储器单元等…

为了使这些单元尽可能繁忙,CPU将等待即将到来的指令,并在等待时在不同的执行单元上开始执行它们 当前指令完成。

(这是一个过于简化的视图,但足以用于本次讨论。实际上,指令被分解为微操作,并分发给执行单元)。

先决条件#3-特权模式

在任何时间点,CPU均以特权模式或非特权模式运行。

  • 内核代码以特权模式运行,并允许访问所有映射的内存。
  • 用户代码以非特权模式运行,如果尝试读取或写入标记为特权的内存,则用户代码将失败,并发生异常。

基本上,操作系统以特权模式运行,而已安装的程序则以非特权模式运行。

问题

如果您考虑以上情况,则似乎用户模式(非特权)代码不应读取内核模式内存,因为CPU会引发异常。

问题是:

  1. 指令完成之前,不会执行特权模式检查。 (即:不在乱序执行期间)。
  2. 即将执行的指令的乱序执行会产生副作用。

运作方式如下

首先,攻击者分配一个内存块,该内存块由256页内存(即256 * 4096字节)组成。 此刻该内存块中的每个页面都不会被缓存,因为它从未被访问过。

接下来,执行类似于以下代码的序列。 这称为“发送者”:

  1. 执行一些会引发异常的指令(什么都没关系)
  2. 从特权内存中读取一个字节。 我们称之为“秘密”
  3. 将机密乘以4096(高速缓存页面大小)
  4. 使用该乘积值作为分配的内存块的索引并读取一个字节(即:从第N页读取一个字节,其中N是秘密)

假设CPU在指令1完成之前开始乱序执行指令2-4,则指令4将导致分配的内存块的一页被缓存在CPU上。 缓存的页面将与从内核模式内存读取的字节直接相关。 例如:如果密码为21,则分配的存储块的第21页现在将被缓存在CPU上。

最后,“接收者”观察到这种无序执行的副作用,以确定读取的机密字节。

  1. 捕获上述指令1引发的异常。
  2. 遍历分配的内存块中的每个页面,然后…
  3. 从每一页读取一个字节花费的时间。
  4. 如果字节快速加载,则该页面必须已被缓存并泄露了机密。

从上面的示例继续,分配的内存块的页面0到20读起来很慢,而页面21则要快得多-因此秘密值必须为21。

现在,只需重复以上所有内容,即可读取您想要的秘密字节数。 白皮书说,他们能够读取高达500Kb /秒的速度。

翻译自: https://hackernoon.com/a-simplified-explanation-of-the-meltdown-cpu-vulnerability-ad316cd0f0de

meltdown漏洞解释

meltdown漏洞解释_“ Meltdown” CPU漏洞的简化解释相关推荐

  1. 预防xml注入漏洞攻击_预防性编程-漏洞发生前如何修复

    预防xml注入漏洞攻击 by Kurt 由库尔特 福尔摩斯(Sherlock Holmes)本来是个出色的程序员 (Sherlock Holmes would have been a brillian ...

  2. 绿盟漏洞扫描_主机安全漏洞解决方案

    前几天发了一篇等保2.0的文章(等保2.0简单介绍 ),文章里面提到,相比于等保1.0标准,等保2.0很大幅度上对安全通用要求的一些控制项做了大幅精简,但是等保二级的要求仍多达135项.等保三级多达2 ...

  3. rc4加密问题漏洞修复_「ssl漏洞」网站SSL安全漏洞修复指南

    前段时间对公司的网站进行了一下扫描,使用的是awvs扫描器,发现了几处SSL方面的安全漏洞,网上找了一些修复的建议,分享给大家,如果你也遇到和我一样的问题,可以用此修复. Web网站的SSL漏洞主要包 ...

  4. xxs漏洞危害_反射型XSS漏洞详解

    反射型XSS漏洞 如果一个应用程序使用动态页面向用户显示错误消息,就会造成一种常见的XSS漏洞.通常,该页面会使用一个包含消息文本的参数,并在响应中将这个文 本返回给用户.对于开发者而言,使用这种机制 ...

  5. 多项logistic回归系数解释_多元回归系数:我们都解释错了?

    作者:金钊 (中山大学) E-Mail: Note: 助教招聘信息请进入「课程主页」查看.因果推断-内生性 专题 ⌚ 2020.11.12-15 主讲:王存同 (中央财经大学):司继春(上海对外经贸大 ...

  6. 古人对梦的解释_中国古代对梦的解释-精选文档

    中国古代对梦的解释 一.中国古代对梦的观念 依据人类可查的历史文献来看, 早在远古时代的人们就已经 意识到"梦"这一现象的存在, 并已经开始试图对这种现象进行 解释. 中国人早在夏 ...

  7. 占优策略名词解释_《曼昆经济学》名词解释——第17章 寡头

    囚徒困境(prisoners' dilemma) 两个被捕的囚徒之间的一种特殊"博弈",说明为什么甚至在合作对双方都有利时,保持合作也是困难的 这个就联系到我们接下来的一个概念 博 ...

  8. CPU 漏洞是“Spectre”和“Meltdown”漏洞简介

    CPU 漏洞是"Spectre"和"Meltdown"漏洞.这些漏洞于2018年1月首次被公开披露.这些漏洞可以允许攻击者利用处理器的一些设计缺陷,从而窃取计算 ...

  9. CPU漏洞修复工具下载,专门针对“Meltdown”(融化)和“Spectre”(幽灵)两组CPU漏洞,360安全卫士国内首发免疫工具

    CPU漏洞免疫工具下载地址:http://down.360safe.com/cpuleak_scan.exe 这两组漏洞可能造成的危害: 这两组漏洞的利用依靠现代CPU普遍使用的推测执行特性(spec ...

  10. php速度慢不怕cpu漏洞,PHP曝远程DOS漏洞可致CPU持续占满,请注意升级_护卫神

    PHP是一个开放的平台,集成了广大PHP爱好者的智慧精华,为社会产生了极大的效益,使用十分广泛. 但是PHP曝出的漏洞也不小,前不久一次hash漏洞导致PHP服务器CPU占满,最近一次的远程DOS漏洞 ...

最新文章

  1. linux c ping实现
  2. android 入门-引用库项目
  3. 单片机入门学习笔记7:人机交互界面
  4. 了解动态链接(六)—— 重定位表
  5. 析构函数和动态内存管理
  6. 到底应不应该表达自己对工作安排的不满?
  7. Eclipse编辑HTML,JSP,JS等时的卡顿问题,非常有效!!!
  8. System.IO命名空间
  9. linux查看文件第三行,学习linux第三课!新手必须掌握的linux命令
  10. No bean named 'xxxxxxx' available--springboot 上线打war包
  11. Android 5.1 Gallery2 模块编译不过解决办法
  12. 汇编语言典型例子详解_汇编语言常见例子
  13. VMware 8.0下载地址
  14. 北京市关于印发建筑工人实名制管理办法(试行)的通知
  15. 研究生阶段如何学习、做研究(超棒)
  16. QQ自由幻想刺客的属性点
  17. 黎活明8天快速掌握android视频教程--21_监听ContentProvider中数据的变化
  18. 【JS】网页悬浮广告及联系QQ客服侧边栏
  19. Java中“||”与“|”的区别【JAVA基础】
  20. 基于SSM的酒吧管理系统

热门文章

  1. S3C2440移植uboot之支持NAND启动
  2. centos yum 第三方仓库 scl 应用
  3. python syntactic suger
  4. VMware Workstation创建Windows 8.1虚拟机
  5. java实现图片拼接
  6. NL2SQL领域:RAT-SQL论文笔记
  7. 草根创业,我劝你抓住网络培训的机会!
  8. 初秋西安,终南山Linux内核问道之旅
  9. 普惠联接,让人类诗意地栖居在大地上
  10. cousera“Neural NetWorks and Deep learning读书笔记