Windows 11でコア分離とメモリ整合性を有効または無効にする

サイバー攻撃はここ数年で変化しています。悪意のあるハッカーがPCを乗っ取り、身代金を支払うまでファイルをロックすることができるようになりました。この種の攻撃はランサムウェアと呼ばれ、WannaCryやPetyaランサムウェアなどのマルウェアを最高レベルの権限で実行しようとするカーネルレベルの悪用を使用します。マイクロソフトは、このような攻撃を軽減するために、コア分離とメモリ整合性を有効にして攻撃を防ぐことができる機能を導入しました。

コア分離とは

コア分離は、重要なWindowsのコアプロセスを、仮想化された環境で実行することでメモリ内に隔離して悪意のあるソフトウェアから保護するWindowsのセキュリティ機能です。コア分離機能には、メモリ整合性とカーネルモードハードウェアで強制されたスタック保護が含まれます。

メモリ整合性とは

メモリ整合性(ハイパーバイザー保護コード整合性とも呼ばれる)は、悪意のあるプログラムが低レベルのドライバーを使用してコンピューターを乗っ取ることを困難にするWindowsのセキュリティ機能です。

Windows Defenderセキュリティセンターは、これらの機能を提供します。デバイスセキュリティと呼ばれ、デバイスに組み込まれたセキュリティ機能のステータスレポートと管理を提供します。これには、保護を強化するために機能を切り替えることも含まれます。ただし、ソフトウェアレベルでは機能しません。ハードウェアでもサポートする必要があります。ファームウェアは仮想化をサポートする必要があります。これにより、Windows 11/10 PCはコンテナー内でアプリケーションを実行できるため、システムの他の部分にアクセスできなくなります。

デバイスは標準ハードウェアセキュリティの要件を満たす必要があります。つまり、デバイスはメモリ整合性とコア分離をサポートし、次のものも備えている必要があります。

  • TPM 2.0(セキュリティプロセッサとも呼ばれます)
  • セキュアブートが有効
  • DEP
  • UEFI MAT.

Windows 11/10でコア分離とメモリ整合性を有効にする

  1. 管理者としてサインインし、Windows Defenderセキュリティセンターを開きます
  2. デバイスセキュリティオプションを探します。
  3. ここでは、PCで仮想化の下のコア分離が有効になっているかどうかを確認する必要があります。
  4. コア分離は、デバイスのコア部分を保護するための仮想化ベースのセキュリティ機能を提供します。
  5. コア分離の詳細をクリックすると、メモリ整合性を有効にするように求められます。

メモリ整合性(ハイパーバイザー保護コード整合性)は、悪意のあるコードをハイセキュリティプロセスに挿入する攻撃を防ぐコア分離のセキュリティ機能です。オンにするには切り替えます。

有効にすると、PCを再起動してメモリ整合性を完全に有効にするように求められます。

後でアプリケーションの互換性の問題が発生した場合は、これをオフにする必要がある場合があります。

レジストリを使用してコア分離とメモリ整合性を有効または無効にする

また、レジストリエディタを使用してコア分離メモリ整合性を有効または無効にすることもできます。次の手順に従います。

  1. Win+Rを押して実行ダイアログを開きます。
  2. regeditと入力してEnterボタンを押します。
  3. はいオプションをクリックします。
  4. HKEY_LOCAL_MACHINEのシナリオに移動します。
  5. シナリオ>新規>キーを右クリックします。
  6. HypervisorEnforcedCodeIntegrityという名前を付けます。
  7. それを右クリック>新規>DWORD(32ビット)値。
  8. Enabledという名前を付けます。
  9. それをダブルクリックして、値データを1に設定して有効にし、0に設定して無効にします。
  10. OKボタンをクリックします。
  11. コンピューターを再起動します。

これらの手順の詳細については、読み続けてください。

注意:REGEDITの手順に進む前に、システムの復元ポイントを作成することを忘れないでください。

開始するには、Win+Rを押して実行ダイアログを開き、regeditと入力してEnterボタンを押します。画面にUACプロンプトが表示されたら、はいオプションをクリックしてレジストリエディタを開きます。

次に、次のパスに移動します。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios

シナリオキーを右クリック>新規>キーHypervisorEnforcedCodeIntegrityという名前を付けます。

次に、REG_DWORD値を作成する必要があります。そのためには、HypervisorEnforcedCodeIntegrity>新規>DWORD(32ビット)値を右クリックして、Enabledという名前を付けます。

デフォルトでは、値データは0になっています。これは、無効になっていることを意味します。ただし、この機能を有効にする場合は、それをダブルクリックして値データを1に設定します。

OKボタンをクリックしてコンピューターを再起動します。

つまり、PCのハードウェアによっては、さらに2つのオプションが利用できる場合があります。

  1. セキュリティプロセッサは、PCのハードウェアでTPMが利用できる場合にのみ表示されます。これらは、OEMによってコンピューターのマザーボードにはんだ付けされた個別のチップです。TPMを最大限に活用するには、OEMはTPMにコマンドを送信し、その応答に反応するために、システムハードウェアとファームウェアをTPMと慎重に統合する必要があります。新しいTPMは、システムハードウェア自体にもセキュリティとプライバシーの利点を提供できます。したがって、新しいPCを購入する場合は、これらすべてを確認してください。
  2. セキュアブートは、OSの前に悪意のあるコードがロードされるのを防ぎます。クラックするのは難しいですが、セキュアブートがあれば対処できます。

Windows 11/10は、クリーンインストールから開始すると、ハイパーバイザー保護コード整合性(HVCI)も提供します。古いハードウェアを使用している人は、Windows Defenderセキュリティセンター(WDSC)のUIを使用して、アップグレード後にオプトインする機能があります。この強化により、コード整合性を検証するカーネルプロセスが、安全なランタイム環境で実行されるようになります。

メモリ整合性スキャンツールとは

メモリ整合性スキャンツールは、コンピューターのメモリ整合性またはHVCI(ハイパーバイザー保護コード整合性)との互換性をチェックするためのマイクロソフトの無料ツールです。

Microsoftダウンロードセンターから、システムアーキテクチャ(AMD64またはARM64)用のhvciscan.exeをダウンロードし、管理者権限のコマンドウィンドウまたはPowerShellからhvciscan.exeを実行します。これにより、結果の出力を確認して、非互換性を特定するのに役立ちます。

メモリアクセス保護とは

カーネルDMA保護またはメモリアクセス保護は、特にPCがロックされているか、ユーザーがサインアウトしている場合に、デバイスが特別な状況を除いてメモリに直接アクセスすることを拒否することにより、悪意のあるデバイスがThunderboltポートなどのPCI(周辺コンポーネントインターコネクト)ポートに接続されたときに発生する可能性のある攻撃からデバイスを保護します。