Lucene search

K
mscveMicrosoftMS:ADV180018
HistoryAug 14, 2018 - 7:00 a.m.

Microsoft Guidance to mitigate L1TF variant

2018-08-1407:00:00
Microsoft
msrc.microsoft.com
171

6.4 Medium

CVSS3

Attack Vector

LOCAL

Attack Complexity

HIGH

Privileges Required

LOW

User Interaction

NONE

Scope

CHANGED

Confidentiality Impact

HIGH

Integrity Impact

LOW

Availability Impact

NONE

CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:L/A:N

5.4 Medium

CVSS2

Access Vector

LOCAL

Access Complexity

MEDIUM

Authentication

NONE

Confidentiality Impact

COMPLETE

Integrity Impact

PARTIAL

Availability Impact

NONE

AV:L/AC:M/Au:N/C:C/I:P/A:N

0.975 High

EPSS

Percentile

100.0%

Executive Summary

On January 3, 2018, Microsoft released an advisory and security updates for a new class of hardware vulnerabilities involving speculative execution side channels (known as Spectre and Meltdown). Microsoft is aware of a new speculative execution side channel vulnerability known as L1 Terminal Fault (L1TF) which has been assigned multiple CVEs as noted in the following table. This vulnerability affects Intel® Core® processors and Intel® Xeon® processors. For more information, see Intel’s advisory at: <https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00161.html&gt;.

CVE Name Applicability
CVE-2018-3615 L1 Terminal Fault Intel® Software Guard Extensions (SGX)
CVE-2018-3620 L1 Terminal Fault Operating System (OS), System Management Mode (SMM)
CVE-2018-3646 L1 Terminal Fault Virtual Machine Manager (VMM)

An attacker who has successfully exploited L1TF may be able to read privileged data across trust boundaries. In shared resource environments (such that exist in some cloud services configurations), this vulnerability could allow one virtual machine to improperly access information from another. An attacker would need prior access to the system or the ability to run code on the system to leverage this vulnerability. For a technical description of L1TF please see our Security Research and Defense (SRD) blog.

Microsoft has released several updates to help mitigate this vulnerability. To get all available protections, firmware (microcode) and software updates are required. We have also taken action to secure our cloud services. See the Microsoft cloud customers section for more details.

Microsoft has not received any information to indicate that this vulnerability has been used to attack customers at this time. Microsoft continues to work closely with industry partners, including chip makers, hardware OEMs, and app vendors to protect customers from the speculative execution class of hardware vulnerabilities.

Recommended Actions

  1. The best protection is to keep your computers up to date. You can do this by taking advantage of automatic updates. Learn how to turn on automatic updates here.

  2. Enterprise customers should:

1. Review this advisory in detail for guidance by product or service and register for the security notifications mailer to be alerted of content changes to this advisory. See [Microsoft Technical Security Notifications](&lt;https://technet.microsoft.com/en-us/security/dd252948&gt;).

2. Inventory the processors in use across the enterprise to determine risk exposure and help inform the required protections for L1TF.

3. Inventory the use of [Virtualization Based Security (VBS)](&lt;https://docs.microsoft.com/en-us/windows-hardware/design/device-experiences/oem-vbs&gt;) across the enterprise and especially in client systems to help inform the required protections.

4. Evaluate the risk posed by L1TF to enterprise environments. In general terms, any system that was deemed to need protection for CVE-2017-5715 (Spectre Variant 2, Branch Target Injection) would need protection for L1TF.
  1. Verify the status of protection for CVE-2018-3620 using the PowerShell script Get-SpeculationControlSettings. For more information and to obtain the PowerShell script see Understanding Get-SpeculationControlSettings PowerShell script output.

Potential performance impacts

In testing, Microsoft has seen some performance impact with these mitigations depending on the configuration of the system and what mitigations are needed. For most consumer devices, we have not observed a noticeable performance impact after applying the updates. Customers that use Virtualization Based Security (VBS) or versions of Hyper-V prior to Windows Server 2016 may need to disable Hyper-Threading to fully address the risk from L1 Terminal Fault (L1TF), resulting in performance degradation. Performance impact will vary by hardware and the workloads running on the system. As the most common device and server configuration is to have Hyper-Threading enabled, the performance impact will depend on whether the user or administrator takes the action to disable Hyper-Threading on the system. As noted earlier, Windows Server 2016 provides an option to enable the Hyper-V Core Scheduler which mitigates the L1TF attack vector while allowing Hyper-Threading to remain enabled, resulting in a minimal performance impact. Windows Server 2019 uses the Core Scheduler by default. For information on performance impact by Intel, please see: www.intel.com/securityfirst.

Advisory Details

Vulnerabilities Description

Speculative execution side-channel vulnerabilities such as L1 Terminal Fault (L1TF) can be used to read the content of memory across a trusted boundary and if exploited, can lead to information disclosure. There are multiple vectors by which an attacker could trigger the vulnerabilities depending on the configured environment. For a detailed view of affected scenarios and Microsoft’s approach to mitigating L1TF please see our Security Research and Defense (SRD) blog. The following table summarizes the potential relevance of L1TF to various attack scenarios and the applicable CVE:

Attack Category Attack Scenario L1TF CVE
Inter-VM Hypervisor-to-guest CVE-2018-3646
Host-to-guest CVE-2018-3646
Guest-to-guest CVE-2018-3646
Intra-OS Kernel-to-user CVE-2018-3620
Process-to-process CVE-2018-3620
Intra-process CVE-2018-3620
Enclave SGX-to-any CVE-2018-3615
VSM-to-any CVE-2018-3646

Microsoft cloud customers

Microsoft has deployed mitigations across our cloud services which reinforce the isolation between customers.

Customers who host untrusted code inside their applications should see Guidance for mitigating speculative execution side-channel vulnerabilities in Azure.

Azure Stack customers

Azure Stack customers should see Guidance for mitigating L1 Terminal Fault in Azure Stack.

Microsoft Windows client customers

Customers using Windows client operating systems on systems with affected Intel processors may need to apply both firmware (Microcode) and software updates, depending on how the system is configured. However, most devices running Windows client operating systems will only need Windows software updates for protection. We have not observed performance degradation from these changes. The following table outlines the requirements for full protection for each CVE:

CVE Windows Changes Requires microcode? Requires additional action?
CVE-2018-3620 Kernel updates No No*
CVE-2018-3646 Hypervisor updates Yes** Yes, if using VBS or Hyper-V
  • Protection for CVE-2018-3620 builds on the mitigation for CVE-2017-5754 (Meltdown). When the mitigation for CVE-2017-5754 is enabled, Windows automatically enables protection for CVE-2018-3620. The mitigation for CVE-2017-5754 (Meltdown) is enabled by default on Windows client. Customers that have disabled the protection for CVE-2017-5754 must re-enable it to gain protection for CVE-2018-3620. (See FAQ#2)

** The required microcode is the same microcode that addresses CVE-2018-3639 and CVE-2018-3640. Microsoft is making available Intel-validated microcode updates for Windows 10 operating systems. Please see Microsoft Knowledge Base Article 4093836 for the current Intel microcode updates.

Customers using Hyper-V or features that rely on Virtualization Based Security (VBS) may need to take additional action to be fully protected:

  1. Installation of Windows Security updates (See the Affected Products table in this advisory).
  2. Installation of firmware updates provided by the device’s OEM.
  3. Disabling Hyper-Threading (See FAQ #1). Note: Disabling Hyper-Threading can affect system performance. Please see Intel’s guidance at www.intel.com/securityfirst for more information.

Windows Virtualization Based Security (VBS) is foundational to Windows 10 security. All VBS features including Hypervisor-enforced Code Integrity (HVCI) and VBS enclaves depend on confidentiality to maintain a strong security boundary. The L1TF vulnerability introduces risk that the confidentiality of VBS secrets could be compromised via a side-channel attack when Hyper-Threading (HT) is enabled, weakening the security boundary provided by VBS. Even with this increased risk, VBS still provides valuable security benefits and mitigates a range of attacks with HT enabled. Hence, we recommend that VBS continue to be used on HT-enabled systems. Customers who want to eliminate the potential risk of the L1TF vulnerability on the confidentiality of VBS should consider disabling HT to mitigate this additional risk.

Windows client operating system users who are using Hyper-V for the security guarantees provided by VM isolation should disable HT to protect against L1TF.

Microsoft Windows Server customers

Customers using Windows Server operating systems may need to apply both firmware (microcode) and software updates, depending on how the system is configured. The following table outlines the requirements for full protection for each CVE:

CVE Windows Server changes Requires microcode? Requires additional action?
CVE-2018-3620 Kernel updates No Windows Server 2019: No*
Windows Server 2016 or earlier: Yes*
CVE-2018-3646 Hypervisor updates Yes** Windows Server 2019: Yes, if using VBS and Hyper-Threading is enabled***
Windows Server 2016 or earlier: Yes, if using VBS or Hyper-V and Hyper-Threading is enabled
  • Protection for CVE-2018-3620 builds on the mitigation for CVE-2017-5754 (Meltdown). When the mitigation for CVE-2017-5754 is enabled, Windows automatically enables protection for CVE-2018-3620. The mitigation for CVE-2017-5754 is enabled by default on Windows Server 2019 and disabled by default on Windows Server 2016 and earlier versions. To obtain protection for CVE-2018-3620, customers must enable the protection for CVE-2017-5754 if disabled. (See FAQ #2).

** The required microcode is the same microcode that addresses CVE-2018-3639 and CVE-2018-3640. Microsoft is making available Intel-validated microcode updates for Windows Server 2016 operating systems. Please see Microsoft Knowledge Base Article 4093836 for the current Intel microcode updates.

*** Windows Server 2019 defaults to using the Core Scheduler as the hypervisor scheduler type. Prior versions of Windows Server use the classic scheduler. Servers that use Hyper-V with Core Scheduler do not need to disable Hyper-Threading to protect against L1TF.

Detailed guidance on the actions required for Windows Server customers can be found in Microsoft Knowledge Base Article 4457951.

Microsoft Surface customers

Customers using Microsoft Surface and Surface Book products need to follow the guidance for Windows Client outlined on this advisory. See Microsoft Knowledge Base Article 4073065 for more information about affected Surface products and availability of the microcode updates.

Microsoft Hololens customers

Microsoft HoloLens is unaffected by L1TF because it does not use an affected Intel processor.

FAQ

1. How do I disable Hyper-Threading on my device?

The steps necessary to disable Hyper-Threading will differ from OEM to OEM but are generally part of the BIOS or firmware setup and configuration tools.

2. How do I enable the mitigation for CVE-2017-5754 (Meltdown)?

Important This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. You can then restore the registry if a problem occurs. For more information about how to back up and restore the registry, see Microsoft Knowledge Base 322756 How to back up and restore the registry in Windows.

To enable protection for CVE-2017-5715 and CVE 2017-5754:

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

Restart the computer for the changes to take effect.

Note: Customers who turned on the mitigation for Speculative Store Bypass (CVE-2018-3639) by following the guidance in Security Advisory 180012 do not need to take further action because the registry key settings provided in ADV180012 also enable protections for CVE-2017-5754.

3. What is VBS and how do I know if I am using it?

Virtualization Based Security (VBS) uses hardware virtualization features to create and isolate a secure region of memory from the normal operating system and is used by security features such as Device Guard, Application Guard, Credential Guard, and Hypervisor Code Integrity (HVCI). VBS is supported in the following versions of Windows:

  • Windows 10 Version 1809
  • Windows 10 Version 1803
  • Windows 10 Version 1709
  • Windows 10 Version 1703
  • Windows 10 Version 1607
  • Windows Serve 2016
  • Windows Server, version 1709
  • Windows Server, version 1803
  • Windows Server 2019

To determine if VBS is enabled, run MSINFO32.EXE and look for the Virtualization-based Security line item under the System Summary node.

6.4 Medium

CVSS3

Attack Vector

LOCAL

Attack Complexity

HIGH

Privileges Required

LOW

User Interaction

NONE

Scope

CHANGED

Confidentiality Impact

HIGH

Integrity Impact

LOW

Availability Impact

NONE

CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:L/A:N

5.4 Medium

CVSS2

Access Vector

LOCAL

Access Complexity

MEDIUM

Authentication

NONE

Confidentiality Impact

COMPLETE

Integrity Impact

PARTIAL

Availability Impact

NONE

AV:L/AC:M/Au:N/C:C/I:P/A:N

0.975 High

EPSS

Percentile

100.0%