Intel漏洞回顾(一)

Intel漏洞回顾(一)

 

作者:maccoray

目录

漏洞背景

幽灵原理

 

漏洞背景

    在今年(2018)的一月初,google的安全团队Project Zero在网路上发布了两则公告

Reading privilegedmemory with a side-channel

Today's CPUvulnerability: what you need to know

    这两则公告基本可以用撼动世界来说明它的威力,因为它所叙述的漏洞,基本上涵盖了所有当下流行的CPU类型,以及波及正在流行的云计算虚拟化方案。漏洞分为“幽灵”和“熔断”,因为文中对于两者的区分比较含糊,一笔带过,因此业界对于两者的区别也争论不休。在我粗俗的见解里面,幽灵和熔断都使用了一种基础技术,“预测旁路”。而“熔断”是“幽灵”应用版升级而已,“幽灵”解决了预测分支的准确执行,从而可以读出“越界地址”的数据内容,基本上没有办法实现跨进程“盗窃”。而“熔断”使用了“幽灵”的特色,加对于“操作系统”原理的认知,逆向,从而实现了“盗窃”的跨进程作案,也就是说漏洞升级为“熔断”后,它有了真正的应用场景。

    当然以上也是我个人的解读,有不妥之处,还望和大家讨论。

 

幽灵原理

    随着google把Paul Kocher等人的文章Spectre Attacks: Exploiting Speculative Execution纰漏,幽灵的POC代码也一同发布给了公众,大家可以到文章结尾的附件中下载原文PDF。通过幽灵可以实现单一进程内的“越界访问”,利用了intel等芯片厂商底层最最引以为荣的“分支预测”功能。

    而为了解释清楚这个在芯片厂商手册里面一笔带过的“分支预测”功能,不管是google的Project Zero(初号工程团队),还是Paul本人都做了大量“晦涩”,“深奥”的猜测。当然这些猜测都被实验证实“正确”,当然是否“准确”还有待芯片厂商的“微代码级别开源”,虽然这个可能性不高。

    通读完两个文章的相关章节后,我试图用一种简明的方法来讲述幽灵的原理,希望没有漏掉太多的细节。推荐大家的阅读方法是,迅速的看完我的文章后,转而用批

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值