IT 專業人員防範理論式執行端通道弱點的 Windows 用戶端指引

適用於: Windows Server 2016 Version 1709Windows Server 2012 R2 StandardWindows Server 2012 Standard 更多

摘要


Microsoft 已知稱為「理論式執行端通道攻擊」的新公開揭露等級弱點,這些弱點影響許多新型處理器,其中包括 Intel、AMD 和 ARM。

注意:這個問題也影響其他作業系統,例如 Android、Chrome、iOS 和 macOS, 因此,建議客戶向那些廠商尋找指引。

Microsoft 已經發行數個更新,可協助避免這些弱點。 我們也已採取行動,保護我們的雲端服務。 請參閱下列章節,了解詳細資訊。

Microsoft 尚未收到任何資訊,指出客戶已遭受這些弱點的攻擊。 Microsoft 正密切地與晶片製造商、硬體 OEM 和應用程式廠商等業界合作夥伴合作,一同保護客戶。 若要取得所有可用的保護,則必須安裝韌體 (微碼) 和軟體更新。 這包括來自裝置 OEM 的微碼,在某些情況下,還包括防毒軟體的更新。

本文解決下列弱點:

Windows Update 也將提供 Internet Explorer 和 Edge 緩和措施。 我們會持續改善這些緩和措施,以防範這個弱點等級。

若要深入了解這個弱點等級,請參閱 ADV180002ADV180012

建議動作


客戶應採取下列動作,以協助防範弱點:

  1. 套用所有可用的 Windows 作業系統更新,其中包括每月 Windows 安全性更新。
  2. 套用裝置製造商所提供的適用韌體 (微碼) 更新。
  3. 根據 Microsoft 資訊安全諮詢 ADV180002ADV180012 以及這篇知識庫文章所提供的資訊,評估您環境的風險。
  4. 運用資訊安全諮詢和這篇知識庫文章提供的登錄機碼資訊,採取必要動作。

注意:Surface 客戶將會透過 Windows Update 取得微碼更新。 如需可用 Surface 裝置韌體 (微碼) 更新的清單,請參閱 KB 4073065

適用於 Windows 用戶端的緩和措施設定


資訊安全諮詢 ADV180002ADV180012 提供有關這些弱點所造成風險的資訊,並協助您識別適用於 Windows 用戶端系統的緩和措施預設狀態。 下列表格摘要說明 CPU 微碼的需求和 Windows 用戶端上的緩和措施預設狀態。

CVE

需要 CPU 微碼/韌體?

緩和措施預設狀態

CVE-2017-5753

預設為啟用 (無停用選項)

CVE-2017-5715

預設為啟用。 使用者若使用配備 AMD 處理器的系統,請參閱<常見問題集>的問題 15,對於使用 ARM 處理器的使用者,則請參閱 ADV180002 上<常見問題集>的問題 20 以了解其他動作,並參閱這篇知識庫文章,以取得適用的登錄機碼設定。

CVE-2017-5754

預設為啟用

CVE-2018-3639

Intel: 是
AMD: 否
ARM: 是

Intel 和 AMD: 預設為停用。 請參閱 ADV180012,以了解詳細資訊,並參閱這篇知識庫文章,以取得適用的登錄機碼設定。

ARM: 預設為啟用且無停用選項。


注意:啟用預設為停用的緩和措施可能會影響效能。 實際的效能影響取決於多個因素,例如裝置中的特定晶片組,以及執行的工作負載。

登錄設定


下列提供的登錄資訊可用來啟用如資訊安全諮詢 ADV180002ADV180012 所述,未預設為啟用的緩和措施。 此外,若使用者想要停用 Windows 用戶端中與 CVE-2017-5715 和 CVE-2017-5754 相關的緩和措施,我們提供的下列登錄機碼設定可供參考。

重要 此章節、方法或工作包含有關如何修改登錄的步驟。 然而,不當修改登錄可能會發生嚴重的問題。 因此,請務必謹慎地依照這些步驟執行。 為加強保護,請先備份登錄再進行修改。 如果發生問題,您就可以還原登錄。 如需有關如何備份和還原登錄的詳細資訊,請參閱 Microsoft 知識庫中的下列文章:

322756 如何在 Windows 中備份及還原登錄

管理 CVE-2017-5715 (Spectre Variant 2) 和 CVE-2017-5754 (Meltdown) 的緩和措施


若要啟用 CVE-2017-5715 (Spectre Variant 2) 和 CVE-2017-5754 (Meltdown) 的預設緩和措施

登錄新增 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0 /f

登錄新增 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

重新啟動電腦,使變更生效。

若要停用 CVE-2017-5715 (Spectre Variant 2) 和 CVE-2017-5754 (Meltdown) 的緩和措施

登錄新增 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 3 /f

登錄新增 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

重新啟動電腦,使變更生效。

注意:FeatureSettingsOverrideMask 設定為 3 的值對於「啟用」和「停用」設定都是正確的 (請參閱<常見問題集>,取得有關登錄機碼的詳細資訊)。

管理 CVE-2017-5715 (Spectre Variant 2) 的緩和措施


若要停用 CVE-2017-5715 (Spectre Variant 2) 的緩和措施:

登錄新增 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 1 /f

登錄新增 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

重新啟動電腦,使變更生效。

若要啟用 CVE-2017-5715 (Spectre Variant 2) 和 CVE-2017-5754 (Meltdown) 的預設緩和措施:

登錄新增 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0 /f

登錄新增 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

重新啟動電腦,使變更生效。

僅適用於 AMD 和 ARM 處理器:啟用 CVE-2017-5715 (Spectre Variant 2) 的完整緩和措施


根據預設,AMD 和 ARM CPU 對 CVE-2017-5715 的使用者至核心保護是停用的。 客戶必須啟用緩和措施,才能收到對 CVE-2017-5715 的其他保護。如需詳細資訊,對於 AMD 處理器,請參閱 ADV180002 中<常見問題集>的問題 15,對於 ARM 處理器,則請參閱 ADV180002 中<常見問題集>的問題 20。

在 AMD 和 ARM 處理器上啟用使用者至核心保護,以及對 CVE 2017-5715 的其他保護:

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

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

重新啟動電腦,使變更生效。

管理 CVE-2018-3639 (理論式儲存略過)、CVE-2017-5715 (Spectre Variant 2) 和 CVE-2017-5754 (Meltdown) 的緩和措施


若要啟用 CVE-2018-3639 (理論式儲存略過) 的緩和措施、CVE-2017-5715 (Spectre Variant 2) 和 CVE-2017-5754 (Meltdown) 的預設緩和措施:

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

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

重新啟動電腦,使變更生效。

注意: AMD 處理器不易受 CVE-2017-5754 (Meltdown) 攻擊。 這個登錄機碼可以用於配備 AMD 處理器的系統,以啟用 AMD 處理器上 CVE-2017-5715 的預設緩和措施及 CVE-2018-3639 的緩和措施。

若要停用 CVE-2018-3639 (理論式儲存略過) 的緩和措施,*以及* CVE-2017-5715 (Spectre Variant 2) 和 CVE-2017-5754 (Meltdown) 的緩和措施

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

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

重新啟動電腦,使變更生效。

僅適用於 AMD 處理器:啟用 CVE-2017-5715 (Spectre Variant 2) 和 CVE 2018-3639 (理論式儲存略過) 的完整緩和措施


根據預設,AMD 處理器對 CVE-2017-5715 的使用者至核心保護是停用的。 客戶必須啟用緩和措施,才能收到對 CVE-2017-5715 的其他保護。 如需詳細資訊,請參閱 ADV180002 中<常見問題集>的問題 15。

在 AMD 處理器上啟用使用者至核心保護,以及對 CVE 2017-5715 的其他保護和對 CVE 2018-3639 (理論式儲存略過) 的保護:

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

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

重新啟動電腦,使變更生效。

驗證已啟用保護


為協助客戶驗證已啟用保護,Microsoft 已經發行 PowerShell 指令碼,可讓客戶在他們的系統上執行。 請執行下列命令,以安裝並執行指令碼。

使用 PowerShell 資源庫的 PowerShell 驗證 (Windows Server 2016 或 WMF 5.0/5.1)

安裝 PowerShell 模組:

PS> Install-Module SpeculationControl

執行 PowerShell 模組,以驗證已啟用保護:

PS> # Save the current execution policy so it can be reset

PS> $SaveExecutionPolicy = Get-ExecutionPolicy

PS> Set-ExecutionPolicy RemoteSigned -Scope Currentuser

PS> Import-Module SpeculationControl

PS> Get-SpeculationControlSettings

PS> # Reset the execution policy to the original state

PS> Set-ExecutionPolicy $SaveExecutionPolicy -Scope Currentuser

使用 Technet 下載的 PowerShell 驗證 (舊版作業系統和舊版 WMF)

安裝 Technet 指令碼中心的 PowerShell 模組:

前往 https://aka.ms/SpeculationControlPS

將 SpeculationControl.zip 下載到本機資料夾。

將內容解壓縮到本機資料夾,例如 C:\ADV180002

執行 PowerShell 模組,以驗證已啟用保護:

啟動 PowerShell,然後 (使用先前的範例) 複製並執行下列命令:

PS> # Save the current execution policy so it can be reset

PS> $SaveExecutionPolicy = Get-ExecutionPolicy

PS> Set-ExecutionPolicy RemoteSigned -Scope Currentuser

PS> CD C:\ADV180002\SpeculationControl

PS> Import-Module .\SpeculationControl.psd1

PS> Get-SpeculationControlSettings

PS> # Reset the execution policy to the original state

PS> Set-ExecutionPolicy $SaveExecutionPolicy -Scope Currentuser


如需有關 PowerShell 指令碼輸出的詳細說明,請參閱
知識庫文章 4074629

常見問題集