Ale*_*iev 6 security x86 x86-64 speculative-execution intel-tsx
由于 Spectre 缓解,所有当前 CPU 都禁用了硬件锁定省略是否正确,并且任何尝试使用 HLE 内在函数/指令进行互斥都会导致通常的互斥?
这是否有可能在未来不会有类似 HLE 互斥体的东西来避免像 Spectre 这样的漏洞?
因此,禁用 TSX 并不是为了缓解 Spectre,而是作为另一个漏洞缓解措施 TSX 异步中止 (TAA) 的一部分。
\n\n这是英特尔网站上的相关文章:
\n\n\n\n其中链接到两篇更详细的文章:
\n\n链接包含以下信息:
\n\nIA32_ARCH_CAPABILITIES[TAA_NO]=1. IA32_ARCH_CAPABILITIES[MDS_NO]=0) 的影响,MDS 的软件缓解措施也将缓解 TAAIA32_ARCH_CAPABILITIES[TAA_NO]=0 在和 的 情况下IA32_ARCH_CAPABILITIES[MDS_NO]=1,应通过以下其中一项来缓解 TAA:\n\n上述选择性禁用 TSX的能力随微码更新而来。此类微代码更新后,控制 TSX 的能力由IA32_ARCH_CAPABILITIES[TSX_CTRL] (bit 7)=1.
现在,关于 HLE。TAA 文章说:
\n\n\n\n\n某些处理器可能需要加载微代码更新以添加对
\nIA32_TSX_CTRL. MSR 支持通过设置禁用 Intel TSX 的 RTM 功能TSX_CTRL_RTM_DISABLE (bit 0)。当该位被设置时,在事务内执行任何指令之前,所有 RTM 事务都将中止并使用中止代码 0,即使是推测性的。在枚举 的处理器上IA32_ARCH_CAPABILITIES[TSX_CTRL] (bit 7)=1,HLE 前缀提示始终被忽略。
HLE 功能在Intel\xc2\xae 64 和 IA-32 架构\nSoftware Developer\xe2\x80\x99s 手册中也被标记为已删除:
\n\n\n\n\n2.5 英特尔指令集架构和删除的功能
\n\nIntel\xc2\xae 内存保护扩展 (Intel\xc2\xae MPX)\n MSR_TEST_CTRL,位 31(MSR 地址 33H)\n 硬件锁消除 (HLE)
\n
我相信我的问题已经有了答案:
\n\n\n\n\n由于
\nSpectreTAA 缓解措施,所有当前 CPU 都禁用了硬件锁定消除,并且任何使用 HLE 内在函数/指令创建互斥体的尝试都会导致通常的互斥体,这是否正确?
是的。它已被弃用。除非英特尔取消弃用它。
\n\n\n\n\n未来是否可能不会出现 HLE 互斥体之类的东西来避免 Spectre 等漏洞?
\n
不会。还有 RTM,可能没有禁用,它可以用来创建像 HLE 互斥体一样的互斥体。未来可能还有一些不受 TAA 影响的处理器,RTM 可能适合它们。
\n| 归档时间: |
|
| 查看次数: |
398 次 |
| 最近记录: |