返回

恶意软件可以利用Intel CPU中的新缺陷发起侧通道攻击

发布时间:2022-02-03 21:51:36 457
# 研究# 数据# 技术# 攻击

一项新的研究发现了另一种窃取敏感数据的方法,它利用了第一种针对英特尔咖啡湖和Skylake处理器中使用的环形互连的“片上跨核”侧通道攻击。

由伊利诺伊大学的一组学者在Unrina ChanPaon发表的研究结果预计将在今年八月的USENIX安全研讨会上发表。

虽然之前已经证明,针对CPU微体系结构的信息泄漏攻击可以打破用户应用程序和操作系统之间的隔离,允许恶意程序访问其他程序使用的内存(例如Meldown和Spectre),但新的攻击利用了环互连上的争用。

SoC环形互连是一种以环形拓扑结构排列的片上总线,它支持不同组件(也称为代理)之间的进程内通信,如核心、末级缓存(LLC)、图形单元和CPU内的系统代理。每个环代理通过所谓的环停止与环进行通信。

为了验证他们的假设,研究人员对环互连协议进行了反向工程,以发现两个或多个进程导致环争用的条件,进而利用它们构建一个容量为4.18 Mbps的隐蔽通道,研究人员称,这是迄今为止最大的不依赖共享内存的跨核心通道,与刷新+刷新或刷新+重新加载不同。

“重要的是,与之前的攻击不同,我们的攻击不依赖于共享内存、缓存集、核心私有资源或任何特定的非核心结构,”该研究的作者之一Riccardo Paccagnella说。“因此,使用现有的‘域隔离’技术很难缓解这些问题。”

研究人员观察到,环形站点总是优先考虑已经在环上的流量,而不是从其代理进入的新流量,他们说,当现有的环上流量延迟注入新的环上流量时,就会发生争用。

有了这些信息,对手可以测量与恶意进程相关的内存访问延迟,这是由于受攻击进程的内存访问导致带宽容量饱和所致。然而,这就要求spy进程在其私有缓存(L1-L2)中始终存在未命中,并从目标LLC片执行加载。

这样做时,由于环形争用导致LLC内存负载重复延迟,攻击者可以利用这些测量值作为旁道,从易受攻击的EdDSA和RSA实现中泄漏密钥位,并通过提取受害者用户键入的准确击键时间来重建密码。

具体地说,“了解我们的逆向工程工作的攻击者可以设置自己的方式,确保其负载与第一个进程的负载抗衡,[…]针对抢占式调度缓存攻击的滥用缓解措施,导致受害者的负载在缓存中丢失,在受害者进行计算时监视环竞争,并使用标准机器学习分类器来消除噪声跟踪和泄漏位。"

这项研究还标志着首次利用基于竞争的微体系结构通道进行击键计时攻击,以推断受害者键入的敏感数据。

作为对披露的回应,英特尔将这些攻击归类为“传统的侧通道”,这是指一类oracle攻击,通常利用执行时间的差异来推断秘密。

The chipmaker's guidelines for countering timing attacks against cryptographic implementations recommend adhering to constant time programming principles by ensuring that —

  • 运行时与秘密值无关
  • 指令的执行顺序(又名代码访问模式)与秘密值无关,以及
  • 内存操作数的加载和存储顺序(也称为数据访问模式)与秘密值无关

有关减轻传统侧通道攻击的安全开发实践的更多指导,请参见此处。本文中详细介绍的复制实验装置的源代码可以在这里访问。


特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线