Ubuntu禁用Intel GPU安全缓解措施,承诺性能提升20%
长期防御基于Spectre的攻击已付出代价。
Dan Goodin – 2025年6月25日 下午3:39 | 20
Ubuntu用户可能在基于Intel的系统上看到图形性能最高提升20%。这一变化将关闭针对一类称为Spectre的攻击的安全缓解措施。
您可能还记得,Spectre攻击于2018年首次公开。Spectre攻击基于观察到现代CPU内置的性能增强功能会打开侧信道,从而泄露CPU正在处理的秘密信息。这种性能增强功能称为推测执行,它预测CPU可能接收到的未来指令,然后在这些指令被调用之前执行相应任务。如果这些指令从未到来,CPU会丢弃其执行的工作。当预测正确时,CPU已经完成了任务。
通过使用强制CPU执行精心选择指令的代码,Spectre攻击可以提取CPU本应访问的机密数据。在过去七年中,研究人员发现了基于架构缺陷的多种攻击变种,这些缺陷无法修复。CPU制造商通过在微代码和二进制代码中创建补丁来应对,这些补丁限制了某些场景下的推测执行操作。当然,这些限制通常会降低CPU性能。
当投入成本超过回报
随着时间推移,这些缓解措施使图形处理性能下降了多达20%。Ubuntu开发团队的一名成员最近报告称。此外,该团队成员表示,Ubuntu将在其内核中集成许多相同的缓解措施,具体在10月发布的Questing Quokka版本中。在与Intel同事协商后,Ubuntu安全工程师决定禁用Intel 图形计算运行时设备驱动程序中的缓解措施。
“在Intel和Canonical安全团队的讨论后,我们达成一致认为,对于GPU而言,Spectre不再需要在计算运行时层级进行缓解。”Ubuntu开发者Shane McKee写道。他继续表示:
在此阶段,Spectre已在内核中得到缓解,而计算运行时构建的明确警告则为那些未应用这些补丁的修改内核用户提供了通知。基于这些原因,我们认为计算运行时中的Spectre缓解措施不再能提供足够的安全影响来证明当前的性能折衷。
McKee表示,因此,“用户可以期待最高20%的性能提升。”
开发者承认这一改变可能会打开安全漏洞或引入错误,但表示Ubuntu和Intel都对禁用版本的安全性充满信心。
大多数Ars咨询的研究人员都同意。他们认为内核内置的缓解措施很可能能保护大多数甚至所有Spectre攻击场景。他们还指出,目前没有已知的Spectre攻击在野外被主动使用的报告。
“没有人会去攻击这些漏洞,因为要实现对它们的有效攻击需要大量工程时间,而且在非常有限的场景中获取任何有趣数据的可能性都很低(此外,由于需要在这些类型的侧信道上进行大量迭代,数据会很嘈杂)。”独立研究员Graham Sutherland 在Mastodon上写道。“对于攻击者来说,经济上并不划算,尤其是当存在许多低投入高回报的攻击方法时。”
“从用户角度来看,这也是风险与回报的权衡。”一位名为demize的研究人员补充道。“可能不要在多租户服务器上禁用侧信道缓解措施……”但对于普通用户来说,“你面临更大的威胁是下载恶意软件,而恶意软件会做任何其他事情。”
最终,密码学工程师Sophie Schmieg表示,缓解措施对GPU性能的益处远不及其性能成本,因为预测指令分支在GPU性能中比CPU性能更为关键。
“系统可以有效地并行化更多操作,而无需在核心之间进行昂贵的同步点。”Schmieg 说。“如果有的话,像GPU这样高度并行的设备甚至比CPU更希望自由地进行分支预测。”
Ubuntu用户应知道的是,这一变化只有在GPU处理运行OpenCL框架或OneAPI Level Zero接口的工作负载时才会提供性能提升。这可能意味着使用游戏和类似应用程序的人将看不到任何好处。
运行自定义Linux内核且未应用Spectre GPU缓解措施的Ubuntu用户应保持计算运行时层级的缓解措施,Ubuntu开发者Canonical的一位发言人表示。这些用户可以使用NEO_DISABLE_MITIGATIONS=false
标志自行构建计算运行时。