検索
連載

緊急パッチだけではプロセッサ脆弱性対策は不十分――Spectre&Meltdown対策状況を再チェック山市良のうぃんどうず日記(117:緊急特別編)(2/4 ページ)

2018年早々、プロセッサに影響する脆弱性が公表されました。そして、Microsoftは1月の定例日(1月10日)を待たずにこの脆弱性を軽減する緊急のセキュリティパッチを含む更新プログラムの提供を開始しました。この緊急パッチをインストールしたことで安心してはいませんか。今回の問題は、OSのパッチだけでは不十分です。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

「SpeculationControl」モジュールで対策状況をチェック!

 2018年1月の緊急パッチは、脆弱性を根本的に解決するものではなく、“脆弱性のリスクを軽減する”機能を提供するものです。また、今回の問題はプロセッサの脆弱性であり、緊急パッチに含まれる軽減策のうち、CVE-2017-5715に対する軽減策は、プロセッサのマイクロコードの更新と併せて初めて機能します。通常、マイクロコードの更新はBIOSやファームウェアの更新として、PCベンダーから提供されます。つまり、Microsoftが提供するパッチを適用しただけでは不十分なのです。

 Microsoftは緊急パッチの提供と併せて、パッチおよび軽減策の対策状況をチェックするためのWindows PowerShell用「SpeculationControl」モジュール(Get-SpeculationControlSettingsファンクション)を提供しています。Windows 10、Windows Server 2016、Windows Server バージョン1709の場合は、Windows PowerShellまたはPowerShell ISE(Integrated Scripting Environment)を開き、以下の2つのコマンドラインを実行します(「-Scope CurrentUser」オプションを指定する場合は、Windows PowerShellを管理者として開く必要はありません)。

PS C:\> Install-Module SpeculationControl -Scope CurrentUser
PS C:\> Get-SpeculationControlSettings

 なお、Get-SpeculationControlSettingsコマンドレットを実行するには、Windows PowerShellの実行ポリシーを変更する必要があります。それには、次のコマンドラインを実行して、一時的に実行ポリシーを「RemoteSigned」に変更してください。

PS C:\> $SaveExecutionPolicy = Get-ExecutionPolicy
PS C:\> Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
PS C:\> Get-SpeculationControlSettings
PS C:\> Set-ExecutionPolicy $SaveExecutionPolicy -Scope CurrentUser

 2018年1月15日現在のモジュールのバージョンは「1.0.4」です。さらに更新されたバージョンが提供されている場合がありますので、以下の2つのコマンドラインで確認、更新してください。

PS C:\> Get-Command Get-SpeculationControlSettings(またはGet-InstalledModule SpeculationControl)
PS C:\> Update-Module SpeculationControl

 対策の実施と確認が完了し、モジュールをアンインストールする場合は、以下の2つのコマンドラインを実行します。「Update-Module」を実行して新しいバージョンをインストールした場合は、「Get-InstalledModule」の結果からモジュールが消えるまで「Uninstall-Module」のコマンドラインを繰り返し実行してください。

PS C:\> Uninstall-Module SpeculationControl
PS C:\> Get-InstalledModule SpeculationControl

 Windows 8.1およびWindows Server 2012 R2以前の場合は、以下のTechNetスクリプトセンターのサイトから「SpeculationControl.zip」をダウンロードして、「SpeculationControl」モジュールをインポートすることで、Get-SpeculationControlSettignsを実行できるようになります。

 具体的な操作手順については、TechNetスクリプトセンターの説明か、クライアント向けのガイダンスに従ってください。

 Get-SpeculationControlSettignsを実行したら、「Suggested actions」の表示を確認してください。「Suggested actions」が表示されなければ、現時点で可能な対策は全て実施済みです。追加の対策が必要な場合は、次の3つのいずれか(または全て)が表示されます。

  • Install BIOS/firmware update provided by your device OEM that enables hardware support for the branch target injection mitigation.(PCベンダーが提供するBIOS/ファームウェアの更新のインストールが必要)

  • Install the latest available updates for Windows with support for speculation control mitigations.(今回の緊急パッチまたはより新しいセキュリティ更新のインストールが必要)

  • Follow the guidance for enabling Windows Client support for speculation control mitigations described in https://support.microsoft.com/help/4073119(Windows Serverの場合で、軽減策が有効化されていない)

 以下の画面1は、現時点で利用可能な全ての対策が完了しているWindows 10 バージョン1709のGet-SpeculationControlSettingsの実行結果です。オールグリーンの状態であることに注目してください。

画面1
画面1 対策済みのWindows 10 バージョン1709でGet-SpeculationControlSettingsを実行した結果

 画面2は、緊急パッチをインストールする前のWindows 7の状態です。なお、x86版のWindows 7では、現状、パッチのインストールとファームウェアの更新が完了しても、CVE-2017-5754については軽減策が有効化されることはありません(前出の表1を参照)。

画面2
画面2 緊急パッチ未適用のWindows 7でGet-SpeculationControlSettingsを実行した結果

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る