聚焦源代码安全,网罗国内外最新资讯!
编译:代码卫士
SLAM 是一种瞬态执行攻击,它利用的内存特性允许软件在64位线性地址中使用未翻译的地址位来存储元数据。CPU 厂商以不同方法执行这种特性且使用的名称各不相同。Intel 称其为“线性地址掩码 (LAM)”、AMD 称其为”高位地址忽略 (UAI)“,而Arm 称其为“顶部字节忽略 (TBI)”。
“SLAM攻击”即基于LAM的 Spectre 攻击,由阿姆斯特丹自由大学系统和网络安全组的研究人员发现,他们通过在最新一代 Ubuntu 系统上模拟 Intel 公司即将发布的 LAM 特性验证了攻击的有效性。
研究人员指出,SLAM 攻击主要影响符合某些标准的未来芯片版本,原因包括未来的芯片设计中缺少严格的规范性检查等。另外,虽然这些高阶的硬件特性(如LAM、UAI和TBI)提升了内存安全和管理,但还引入了可利用的微架构条件竞争。
SLAM 攻击利用了一种新型的瞬态执行技术。该技术着重于利用此前未被探索的 Spectre 披露类别,特别是涉及指针追逐的小工具。“工具”即软件代码中可被攻击者操纵以触发推断执行从而暴露敏感信息的指令。
尽管推断执行的结果已被废弃,但该流程留下多种痕迹如被修改的缓存状态,而攻击者可利用该缓存状态推断多种敏感信息如其它程序甚至是操作系统中的数据。
SLAM 攻击针对的是将机密数据用作指针的“未掩码”工具。研究人员表示这种情况在软件中非常常见且可被用于泄露任意ASCII内核数据。研究人员通过自己开发的扫描器发现了 Linux 内核上存在数百个可被利用的工具。
在实际场景中,攻击者需要在目标系统上执行与未掩码工具交互的代码,之后使用复杂算法仔细衡量副作用,以提取敏感信息如密码或内核内存中的加密密钥。
研究人员在 GitHub 平台上发布了 SLAM 攻击复现数据,并在一份技术报告中解释了攻击的运行原理。研究人员发现SLAM 攻击影响如下处理器:
易受 CVE-2023-12965漏洞影响的现有 AMD CPU
支持 LAM 的Intel 未来 CPU 版本(4级和5级分页)
支持UAI和5级分页的 AMD CPU
支持 TBI 和5级分页的Arm CPU
Arm 发布一份安全公告解释称,系统已缓解针对 Spectre v2和 Spectre-BHB,无计划对SLAM攻击采取进一步措施。
AMD 也提到当前的的 Spectre v2 缓解措施解决了SLAM攻击,并未提供任何指南或更新来降低相关风险。
Intel 宣布将在发布支持 LAM 的未来处理器之前提供软件指南,如部署具有线性地址空间分离 (LASS) 安全扩展的特性,阻止用户/内核模式下的推断地址访问。
在没有发布进一步的指南前,Linux 工程师已创建补丁禁用LAM。
“奇怪的”高危Reptar CPU 漏洞影响 Intel 桌面和服务器系统
题图:Pixabay License
本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。
奇安信代码卫士 (codesafe)
国内首个专注于软件开发安全的产品线。
觉得不错,就点个 “在看” 或 "赞” 吧~