LeftoverLocals漏洞概述
安全公司Trail of Bits披露了一个名为LeftoverLocals的漏洞,该漏洞允许恶意攻击者从Apple、Qualcomm、AMD和Imagination的GPU本地内存中恢复数据。该漏洞影响所有使用GPU的应用程序,包括大型语言模型(LLMs)和机器学习(ML)模型。
漏洞原理与利用
研究人员构建了一个概念验证,展示了攻击者如何跨进程或容器边界恢复GPU本地内存(一种优化的GPU内存区域,用作缓存)。攻击者可以通过运行GPU计算程序访问目标机器的GPU本地内存,从而窃取数据。例如,在AMD Radeon RX 7900 XT上,每次GPU调用可泄露约5.5 MB数据,运行7B模型时,每次LLM查询可能泄露约181 MB数据,足以高精度重建LLM响应。
攻击条件与难度
攻击者需要在目标机器上运行GPU计算程序,这可能需要利用其他漏洞或诱导用户安装恶意应用程序。尽管攻击程序的代码量可能少于10行,且业余程序员也能实现,但攻击的实际可行性受到目标机器访问权限的限制,降低了漏洞的严重性。
技术细节与用户缓解措施
攻击者可以使用OpenCL、Vulkan或Metal等框架编写GPU内核来访问未初始化的本地内存。浏览器GPU框架(如WebGPU)由于动态内存检查的存在,无法用于此类攻击。用户难以确定GPU应用是否使用本地内存,因为需要检查包括外部依赖在内的源代码。唯一的缓解措施是修改所有使用本地内存的GPU内核源代码,并确保清除本地内存内容,但这可能因编译器优化而变得复杂。
厂商响应与修复进展
- Qualcomm和Imagination已发布修复固件,部分设备已修复。
- Apple确认A17和M3系列处理器已修复,但未明确所有设备的修复情况。部分设备(如iPad Air 3rd G和iPhone 15)已修复,而其他设备(如MacBook Air M2)仍存在漏洞。
- AMD表示正在调查潜在的修复计划。
- NVIDIA和ARM确认其GPU目前不受此漏洞影响。
总结与建议
LeftoverLocals漏洞暴露了GPU计算设备在安全方面的潜在风险,尤其是在LLM和ML模型中的应用。尽管部分厂商已采取措施修复漏洞,但仍有许多设备处于风险中。用户应关注厂商发布的安全更新,并谨慎运行未知来源的GPU程序。如需了解更详细的技术细节及其对LLM安全的影响,可参考原文。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。