2018/01/07

例の CPU 脆弱性問題にフルアーマーな PC (Windows クライアントとサーバー)

我が家の PC は古いものばっかりで、ファームウェアの更新なさそうだから、例の CPU 脆弱性(Meltdown & Spectre)問題に対策できないなぁと思っていたのですが、たまたま知人の新規 PC のセットアップをしたので、その際に確認してみると...

(1) セキュリティパッチのインストール(Windows 10 バージョン 1709 の場合は KB4056892、16299.192)
(2) 最新のファームウェア(BIOS)アップデート(1/11 追記:CVE-2017-5715 の軽減のために必要、ADV18002 の FAQ 9参照)。

Get-SpeculationControlSettings はオールグリーン。 1/6 時点でフルアーマーで対策済みになりました。

PS> Install-Module SpeculationControl
PS> Get-SpeculationControlSettings

1/11 追記:ファームウェア更新なしでも CVE-2017-5753 と CVE-2017-5754 の軽減策は利用可能。ADV18002 の FAQ 9参照。


1/9 追記:32 ビット版のパッチには CVE-2017-5754 対策が含まれません。将来のアップデートで提供予定(ADV18002 の FAQ 7 を参照)。

関連:
仕事始めは Windows Update から(例の Intel/AMD/ARM CPU 問題に関する追記あり)

1/8 追記:
Windows Server は、セキュリティ パッチとファームウェア更新だけでは、(2つの)軽減策は既定では有効にならない。軽減策が必要かどうか検討し、レジストリを作成&再起動して有効化(→)する。

悪意のあるコードを含むかもしれないデスクトップ アプリとか Web ブラウジングとかサーバーでは利用されないから、サーバーとしてのパフォーマンスへの影響を考慮して既定で無効になっているんだと思う。で、Hyper-V の役割とかコンテナーとか(仮想マシンやコンテナー側から悪意のあるコードの実行の可能性)、リモートデスクトップセッションホストとか(デスクトップアプリやWeb ブラウジングの利用環境だから)、SQL Server とか(拡張やアプリケーションロジックに悪意のあるコードの可能性)の場合は、レジストリを追加して有効化する必要あるってことで。

Windows Server Guidance to protect against the speculative execution side-channel vulnerabilities (サーバー向けガイダンス)
[URL]  https://support.microsoft.com/en-us/help/4072698/windows-server-guidance-to-protect-against-the-speculative-execution-s

有効化するには...(1/8 現在の情報、↑で最新情報を確認してください
C:\> reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0 /f
C:\> reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f
C:\> reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization" /v MinVmVersionForCpuBasedMitigations /t REG_SZ /d "1.0" /f
↑Hyper-V で VM バージョンが古い仮想マシンを実行している場合に必要。パッチ済みホストからパッチなしホストへのライブ マイグレーション失敗問題を回避するためにも必要。
C:\> shutdown /r /t 0

関連:
Protecting guest virtual machines from CVE-2017-5715 (branch target injection)
[URL] https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/CVE-2017-5715-and-hyper-v-vms

Windows コンテナーを実行する場合は、上記の対策+最新のベース OS イメージの使用を。

関連:
Windows Containers Base OS Image "Important" Update
 
実は先ほどのサーバーの Get-SpeculationControlSettins の結果は、対策済みの Windows 10 上で稼働する Hyper-V 仮想マシンのものでした。ホスト側の対策済みプロセッサの情報は、仮想マシンにも伝達されている模様。
1/4 に前倒してメンテナンスを実施して、対策済みになったという Azure の環境だと、そうはならないんですよね。

まだ、私の仮想マシンが移行されていないのか、それともそういう仕様なのか???
1/9 追記:信用できる筋の言葉かはわかりませんが...
Meltdown and Spectre - What output are you seeing from '' on Windows OS Azure VMs after you have followed all of Microsoft's remediation steps?
[URL] https://www.reddit.com/r/AZURE/comments/7ob71w/meltdown_and_spectre_what_output_are_you_seeing/
"BTI mitigation hardware support is not exposed by the Azure hypervisor into the guest VMs, so that will always show false on an Azure VM. "

0 件のコメント: