写点什么

学术研究发现英特尔 CPU 存在新漏洞

英特尔 CPU 互连可以被恶意软件利用,泄露加密密钥和其他信息

  • 2021-03-09
  • 本文字数:1884 字

    阅读完需:约 6 分钟

学术研究发现英特尔 CPU 存在新漏洞

学术研究发现,恶意软件可以利用英特尔 CPU 互连技术,泄露加密密钥和其它信息。

 

美国的芯片黑客又想出了一种方法,利用英特尔的处理器设计选择来窃取敏感数据。

 

伊利诺伊大学香槟分校的博士生 Riccardo Paccagnella、硕士生 Licheng Luo 和助理教授 Christopher Fletcher 对 CPU 环互连进行了深入研究,他们发现,CPU 环互连可以被滥用于旁路攻击(side-channel attacks)。 因此,一个应用程序可以推断出另一个应用程序的私有内存,并窥探用户的按键。

 

Paccagnella 告诉 the Register :“这是第一次利用英特尔 CPU 跨核互连(cross-core interconnect)的争用进行攻击。这种攻击不依赖于共享内存、缓存集、核心私有资源或任何特定的非核心结构。因此,现有的旁路防御技术很难减轻这种攻击。”

 

旁路攻击,如 2018 年的 Spectre 和 Meltdown 漏洞,利用现代芯片微架构的特性,通过与共享计算组件或资源的交互,暴露或推断秘密。

 

Paccagnella、Luo 和 Fletcher 将于 8 月在 USENIX Security 2021 上发表一篇论文,题为《指环王:对 CPU 片上环互联的旁路攻击具备实用性》(Lord of the Ring:Side Channel Attacks on the CPU On-Chip Ring Interconnect Are Practical)。

 

通过这一理解,他们发现他们能够泄露 RSA 和和 EdDSA 实现中的加密密钥位,而这两种已知易受旁路攻击。他们还表明,他们可以监控击键时间,而先前的研究表明,击键时间可以用来重建输入的密码。

 

挖掘“末日山”

 

研究人员面临着两个方面的挑战:首先,英特尔并没有提供太多关于其 CPU 环形总线工作原理的细节,所以需要进行大量的逆向工程。

 

其次,他们的攻击依赖于争用,在这种情况下,争用将监视不同进程同时访问内存时的延迟。这一观察非常困难,因为要识别和过滤大量的干扰,而诸如私有缓存丢失 (系统查找不在缓存中的数据)等有意义的事件则不太常见。

 

Paccagnella 说:“从更高的层次上讲,这个想法是因为共享环互连的带宽容量有限,一个进程的存储器访问会延迟另一个进程的存储器访问。”

 

“通过逆向工程的知识,攻击者 / 接收者可以自行设置,使其负载能够确保被受害者 / 发送者的内存访问延迟,并利用这些延迟作为旁路。”

 

这些重复的内存加载基本上会导致延迟,从而向观察者泄露秘密。

 

Paccagnella 表示,这两种类型的攻击都涉及到本地攻击者在受害者的计算机上运行无权限代码,比如隐藏在软件库或应用程序中的恶意软件,从而窥探其他程序或用户。他说,基于云的场景,即对手是共享系统的管理员或共同租户,也是可能的,但是他和他的同事不愿意这样说,因为演示攻击是在非虚拟化环境中运行的,而且还没有在其他环境中测试过。

 

一些基本知识

 

这种加密攻击假定同步多线程(simultaneous multithreading,SMT)已被禁用,并且已对最后一级缓存(last level cache ,LLC)进行了分区,以防御基于多核缓存的攻击,并已禁用了跨安全域的内存共享。该方法还假定系统设置了清除目标的缓存占用,以防止基于缓存的抢占式调度攻击。

 

这些攻击在英特尔 Coffee Lake 和 Skylake CPU(桌面级 CPU)进行了测试,在 Xeon Broadwell 等服务器 CPU 上应该也能用。目前尚不清楚,具有网状互连的最新英特尔服务器芯片是否也会受到影响。同样,研究人员尚未研究他们的技术如何在 ARM CPU 上工作,因为 ARM CPU 依赖于不同的互连技术。

 

英特尔与美国国家科学基金会一起支持了这项研究,但英特尔并没有过于关注基于 CPU 总线的干预。

 

“英特尔将我们的攻击归类为‘传统旁路’(如 TLBleed、Portsmash 等),”Paccagnella 说。“他们对这种攻击的处理与‘推测执行 / 瞬态执行攻击’(如 Spectre、Meltdown 等)有所不同。也就是说,他们并不认为传统的旁路攻击对攻击者来说很有价值,他们已经公布了关于如何在软件中减轻这些攻击的建议:《针对密码实现的缓解定时旁路指南》(Guidelines for Mitigating Timing Side Channels Against Cryptographic Implementations)、《防御旁路攻击安全最佳实践》(Security Best Practices for Side Channel Resistance)。

 

部分英特尔提议涉及到依靠恒定时间编程原则来防御基于时间的攻击。

 

该论文指出,这种措施将提供一种防御密码学攻击的方法,这取决于代码不在恒定的时间内。但 Paccagnella 表示,这并不是一个必然的结果。

 

“真正的恒定时间代码在实践中可能很难实现,”他说。“此外,为了在环互联中实现‘域隔离’,还需要额外的硬件支持。”

 

作者介绍:

 

Thomas Claburn,常驻旧金山湾区,为 The Register 报道软件开发、DevOps、计算机安全等。

 

原文链接:

 

https://www.theregister.com/2021/03/08/intel_ring_flaw

2021-03-09 16:413829
用户头像

发布了 74 篇内容, 共 28.4 次阅读, 收获喜欢 83 次。

关注

评论 1 条评论

发布
用户头像
LiCheng Luo好像是中国人?这才是真正的黑客
2021-03-09 22:11
回复
没有更多了
发现更多内容

计算机网络(五、运输层)

计算机网络 8月月更

Python自学教程1-安装pycharm和执行环境

和牛

Python 测试 8月月更

二叉树的递归和迭代实现(java)

工程师日月

8月月更

IPv6相关翻译技术

穿过生命散发芬芳

ipv6 8月月更

又一款超好用开源知识库管理工具!

Jackpop

ITIL与DevOps对比

阿泽🧸

ITIL 8月月更

程序员面试太卷?我选择背这份阿里最新Java面试八股文(详解版)

小柴说Java

Java 编程 程序员 架构 面试

学习 C++ 编程,怎么才能找到合适的练手项目?

Jackpop

仿淘宝大流量高并发电商领域核心项目已上线(完整流程+白皮书)

小柴说Java

Java 编程 程序员 架构 面试

基于小程序的小区物业管理平台开发笔记

CC同学

计算机网络(六、应用层)

计算机网络 8月月更

信用卡业务数字化专题研究2022H1

易观分析

金融 信用卡

7 天学个Go,Go 结构体 + Go range 来学学

梦想橡皮擦

Python 爬虫 8月月更

秋招最牛的Java面试八股文合集,让我见识到了基础的天花板

退休的汤姆

Java、 面经 社招 Java工程师 秋招

HTTPS 协议

武师叔

8月月更

什么是 OpenJ9

HoneyMoose

开源一夏 | JavaScript实战之闭包与函数调用的相互应用详解

恒山其若陋兮

开源 8月月更

长安链学习-启动脚本分析

长安链

HTTP 通信

武师叔

8月月更

应用层

武师叔

8月月更

连续仨月霸占牛客榜首!京东T8呕心巨作:700页JVM虚拟机实战手册

小柴说Java

Java 编程 程序员 架构 面试

收藏不迷路 —— Flutter 转场动效大合集

岛上码农

flutter 前端 安卓开发 ios 开发 8月月更

RxJS Observable 为什么要长成这个样子?!

掘金安东尼

前端 函数式编程 8月月更

长安链学习-build_release.sh

长安链

惊爆GitHub!腾讯T14级SQL首席专家开源分布式数据库架构实践手册

小柴说Java

Java 编程 程序员 架构 面试

首次公开!阿里巴巴最新高并发架构设计实录被我从Github扒下来了

程序员小毕

Java 程序员 架构 面试 高并发

[JS真好玩] 掘金创作者必备: 用一行JS查看所有文章的转化率,让你知道什么标题才是好标题

HullQin

CSS JavaScript html 前端 8月月更

开源一夏 | 我们都是开源者

宁在春

开源 8月月更

每日一R「11」数据结构(二)切片

Samson

8月日更 ​Rust

Spring进阶(六):Spring事务问题分析及解决方案探究

No Silver Bullet

spring 8月月更 事务问题

OpenHarmony技术挑战课题征集

Geek_2d6073

学术研究发现英特尔 CPU 存在新漏洞_硬件_Thomas Claburn_InfoQ精选文章