MENU

Windows 11 の「カーネルモードハードウェア強制スタック保護」とは

このページでは、「カーネルモードハードウェア強制スタック保護」の機能と使用するための条件、および「オン」にした場合のデメリットを紹介します。

目次

「カーネルモードハードウェア強制スタック保護」とは

「カーネルモード ハードウェア強制スタック保護」とは、Windows 11 の「コア分離」というセキュリティ機能の一部であり、悪意のあるソフトウェアによる PC の乗っ取りを防ぐための、非常に強力な防御システムです。

この「コア分離」には、以前解説した「メモリ整合性」も含まれており、これらは連携して OS の心臓部を守っています。

目的:メモリスタックを乗っ取りから守る

この機能の目的は、プログラムの実行時に使われる「メモリスタック」という、極めて重要なメモリ領域を保護することです。

【用語解説】メモリスタックとは? プログラムが実行される際に、関数の戻り先アドレスなど、処理の流れを制御するための重要な情報を一時的に保存する、特殊なメモリ領域のことです。

仕組み:「シャドウスタック」による二重チェック

この機能が有効になっていると、PC の CPU は、通常のスタックとは別に、「シャドウスタック」と呼ばれる、もう一つのスタックを用意します。そして、プログラムの実行中に、この 2つのスタックの内容を常に比較・照合します。

もし、攻撃者がプログラムの脆弱性を突いて、通常のスタックの内容(戻り先アドレスなど)を不正に書き換え、悪意のあるコードを実行しようとしても、シャドウスタックとの間に矛盾が生じるため、CPU がその異常を検知し、攻撃を未然に防いでくれるのです。

これは、銀行の取引で、担当者と責任者の二人が同じ伝票をチェック(二重チェック)することで、不正を防ぐ仕組みに似ています。

防御できる攻撃:「バッファオーバーフロー攻撃」など

この仕組みは、特に「バッファオーバーフロー攻撃」と呼ばれる、古典的かつ強力なサイバー攻撃に対して絶大な効果を発揮します。

【用語解説】バッファオーバーフロー攻撃とは? プログラムが用意したデータ保存領域(バッファ)に、想定を超える量のデータを送り込むことで、メモリを溢れさせ、そこに悪意のあるコードを書き込んで実行させる攻撃手法です。

注意! Win11「ローカルセキュリティ機関の保護」が有効かどうかを確認する方法

「カーネルモードハードウェア強制スタック保護」機能を使用するための条件

「カーネルモードハードウェア強制スタック保護」は、BIOS での設定が必要な場合があり、サポートされていない CPU では使用することができません。

前提条件

  • Windows 11 2022 更新プログラム以降
  • Windows セキュリティ アプリ バージョン 1000.25330.0.9000 以降
  • Intel Control-Flow Enforcement Technology (CET) または AMD Shadow Stacks をサポートするハードウェア。
    • Intel の場合、第 11 世代 Intel Core Mobile プロセッサと AMD Zen 3 Core (以降)。
  • 仮想化ベースのセキュリティ (VBS) とハイパーバイザーによって適用されるコード整合性 (HVCI) が有効になります。
Microsoft

「カーネルモードハードウェア強制スタック保護」の機能を使用するためには、比較的新しい CPU が必要であり、次のような場合は設定で「オン」にすることができません。

  • 古いアンチチートプログラム(ゲーム用)がインストールされている
  • 古いキーボードやマウスのドライバーがインストールされている
  • 特定のアプリ、または互換性のないドライバーがインストールされている

その場合は、「互換性のないドライバーとサービスを確認する」をクリックして確認します。

カーネルモードハードウェア強制スタック保護
カーネルモードハードウェア強制スタック保護

互換性のないドライバーとサービスが表示されていますので、それらを削除することで「カーネルモードハードウェア強制スタック保護」機能を使用することができるようになります。

互換性のないドライバーとサービス
互換性のないドライバーとサービス

また、メモリ整合性を「オン」にする必要があります。

Windows セキュリティ>デバイスセキュリティ>コア分離の詳細
Windows セキュリティ>デバイスセキュリティ>コア分離の詳細

メモリ整合性が有効でない場合、「カーネルモードハードウェア強制スタック保護」機能を使用することはできません。

「カーネルモードハードウェア強制スタック保護」を「オン」にするデメリット

「カーネルモードハードウェア強制スタック保護」を「オン」にするデメリットは、特定のアプリケーションが正常に機能しなくなる場合があるということです。

特定のドライバーのインストール及び読み込みができなくなるので、例えば、今まで問題なく動作していたプリンターなどのデバイスが動かなくなってしまう可能性があります。

筆者の環境では「Epic Games」の「フォートナイト」が起動できなくなることを確認しています。

「フォートナイト」をインストールした後に「カーネルモードハードウェア強制スタック保護」を「オン」にできたとしても、「フォートナイト」を起動することができません。

プログラム互換性アシスタント
プログラム互換性アシスタント

「Epic Games」のアンチチートプログラムも同様に読み込むことができなくなります。

このように、特定のアプリやデバイスが動かなくなるというデメリットがあるので注意が必要です。

「カーネルモードハードウェア強制スタック保護」は、企業におすすめの機能なので、個人で使用する PC で「オン」にする必要はないでしょう。

この記事が「役立った!」と思ったら、ぜひSNSでシェアをお願いします。
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次