
再来一次! 就在两周前,我们
讨论了使用推测性记录方法的新Spectre攻击。 上周最重要的新闻又是关于幽灵家族的消息,现在要凉爽得多。 奥地利格拉茨技术大学的研究人员找到了一种从第三方渠道远程检索数据的方法,因此就是攻击的名称。
我想说的是,NetSpectre攻击不需要在被攻击的系统上执行任何代码(例如,与基于JavaScript的基于浏览器的攻击不同),但这并不是完全正确的。 在NetSpectre的上下文中,“代码”是网络上与其他计算机的例行工作,攻击者不会直接控制而是会影响它。 远程检测不同处理器操作模式之间的微观差异的能力令人印象深刻。 与其他Spectre研究一样,这项工作(到目前为止)是理论上的,而新攻击的特征是数据提取速度非常慢:每分钟比特数。 尽管阅读
原始研究仍然更好,但本文还是以人类语言对新攻击进行了评论。

在NetSpectre研究发表之前,通常将通常在浏览器中执行的JavaScript代码作为对推测性代码执行机制的指示性远程攻击来
提供 。 根据新工作的作者,这种方法提供了相当准确地测量请求和数据接收之间的延迟的可能性。 因为从原理上讲,这是在Spectre类型的攻击中发生的(并且已经有很多此类攻击),所以响应时间的差异使我们能够重建可执行文件无法访问的数据。
NetSpectre不需要攻击者直接在目标系统上执行代码。 而是使用通常的网络数据交换,例如,从受攻击的服务器下载文件并传输单个网络数据包。 研究人员从易受攻击的服务器(在一个示例中,这是一台装有Intel Core i5-6200U处理器的计算机)创建了一个人工结构,该网络中有两个小工具。 小工具表示某种机制,可以实现我们所需的某些属性,即漏洞的软件部分。 “泄漏小工具”通过以下方式为推测敏感数据的推测性请求创造了条件,该请求或多或少是类似Spectre攻击的标准:
第二个小工具的术语有点令人困惑。 自然,“传输工具”并不是一个将秘密从主内存或CPU缓存直接传输给攻击者的漏洞,就像在更简单的
Heartbleed攻击中发生的一样(已经过去了四年!)。 “传输工具”为攻击者分析数据传输的延迟创造了条件,从而可以从中重建必要的信息。
研究人员提出了两个针对NetSpectre攻击的第三方数据泄漏通道。 第一个几乎完全重复了原始Spectre的机制,并使用了处理器缓存。 第二个完全不使用高速缓存:而是使用
AVX2集中的指令计算块。 由于这些单元的特点是功耗高,因此在没有负载时会关闭它们。 在收到指令集的指示后,它们的加入会稍有延迟,也可以远程测量。 此方法比“传统”缓存操作快几倍:通过缓存进行的数据重建在千兆位LAN中以每分钟4位的速度进行,借助AVX2,已经可以每分钟传输8个字节。
为什么这么慢? 例如,您可以从研究中的这张图片中了解:
原始的Spectre攻击是直接在被攻击的系统上执行的,它需要测量处理器对指令的响应延迟(以毫秒为单位)。 它也相当慢-可能以每秒几千比特的速度进行“数据盗窃”。 任何因素都可能影响传输网络数据包的延迟,因此NetSpectre会“冻结”(实际上实际上是成功进行了一次攻击),以连续多次从平均值中获得具有高可靠性的所需位或字节。
因此,通过
成千上万次的测量可以获得合理的攻击精度。 在
每个文件中,您都需要执行一个复杂的操作,例如,通过下载590 KB的文件来刷新缓存。 顺便说一下,数据处理中没有使用机器学习算法:它们显然将有助于减少准确数据重建所需的测量次数。 当攻击者和受害者不在同一本地网络上时,将需要此类算法,否则将以1.6亿次测量(!)的方式“传输”一个字节(!)8小时(使用AVX2方法为3小时)。
研究人员使用装有英特尔处理器的计算机和笔记本电脑,装有ARM Cortex A75核心处理器的设备以及Google Cloud Platform(位于两个虚拟机之间)成功地进行了攻击。 再一次,攻击完全是理论上的。 为了在实际条件下实施,您需要在特定服务器上安装的特定版本软件(例如Linux内核)中找到适当的“小工具”。 必须提供与服务器交互的条件,而这种条件并不总是可行的。 特别是,研究人员直接指出,由于请求数量和传输的数据量大,任何针对DDoS攻击的保护手段几乎都会立即禁止攻击者。 即使是阵容中的处理器模型也很重要:对于工作中使用的Core i5,它将使用3兆字节的缓存,但对于某些其他缓存(具有不同的缓存大小),可能就不行了。
但是仍然令人印象深刻! 这突然是某种“激光”麦克风,可以消除房间窗户上的振动。 NetSpectre不会带来其他风险:英特尔评论说,已知的Spectre缓解方法也可用于网络化身。 我将以开发新的攻击方法的速度着手-并假设仍然有最有趣的
通过打开的窗口窃取数据的方法。 不管他们为我们所有人付出了多大的代价-在生产力被迫下降以及供应商需要资本成本的情况下。
免责声明:本摘要中表达的观点可能并不总是与卡巴斯基实验室的官方立场相符。 亲爱的编辑们通常建议以健康的怀疑态度对待任何观点。