由于减轻了Spectre的影响,硬件锁定消除功能已经永远消失了吗?

问题描述 投票:3回答:1
这是正确的,由于减轻了Spectre的影响,当前所有的CPU都禁用了硬件锁定清除功能,任何使用HLE内部函数/指令进行互斥的尝试都将导致通常的互斥?

将来是否有可能不会出现像HLE互斥那样的东西,以避免像Spectre这样的漏洞?

security x86 x86-64 speculative-execution intel-tsx
1个回答
0
投票
因此,可能禁用TSX并不是为了减轻Spectre,而是作为缓解漏洞,TSX异步中止(TAA)的一部分。

这里是英特尔网站上的相关文章:

  • 其中链接到两篇更详细的文章:

  • Microarchitectural Store Buffer Data Sampling (MSBDS) CVE-2018-12126
  • 链接包含以下信息:

      [某些将来甚至现在的CPU可能具有TAA的硬件缓解措施,由IA32_ARCH_CAPABILITIES[TAA_NO]=1检测到。
  • 否则,如果CPU易受MDS(IA32_ARCH_CAPABILITIES[MDS_NO]=0)影响,则缓解MDS的软件也将减轻TAA
  • [在IA32_ARCH_CAPABILITIES[TAA_NO]=0
  • 和]的情况下> IA32_ARCH_CAPABILITIES[MDS_NO]=1,应通过以下措施之一减轻TAA:
      减轻软件负担
  • 有选择地禁用TSX
  • 上述提及的

    选择性禁用TSX的能力随微码更新一起到达。在此类微代码更新之后,控制TSX的能力由IA32_ARCH_CAPABILITIES[TSX_CTRL] (bit 7)=1控制。现在,关于HLE。 TAA article说:

    某些处理器可能需要加载微代码更新以添加对IA32_TSX_CTRL的支持。 MSR支持通过设置TSX_CTRL_RTM_DISABLE (bit 0)禁用Intel TSX的RTM功能。设置此位后,所有RTM事务都将中止代码0进行中止,然后才能在事务中执行任何指令,即使是推测性的。在枚举IA32_ARCH_CAPABILITIES[TSX_CTRL] (bit 7)=1的处理器上,始终会忽略HLE前缀提示。

    这仍然是模棱两可的,如果语句“

    在枚举IA32_ARCH_CAPABILITIES[TSX_CTRL] (bit 7)=1的处理器上,始终忽略HLE前缀提示

    ”是通用的,或者仅涉及情况“ 设置此位时”。 但是由于(当前或将来)CPU不易受TAA的影响,我相信我对我的问题有答案:

    由于

    Spectre

    TAA缓解,是否为当前所有CPU禁用了硬件锁定清除功能,并且使用HLE内在函数/指令进行互斥的任何尝试都会导致通常的互斥吗?可能不是。不受TAA影响的CPU可能支持HLE前缀。

    将来是否有可能不会出现像HLE互斥那样的东西,以避免像Spectre这样的漏洞?

    没有仍然有RTM,它可能没有被禁用,它可用于创建诸如HLE互斥锁的互斥锁。

  • © www.soinside.com 2019 - 2024. All rights reserved.