PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY構造体 (winnt.h)

このデータ構造は、サイド チャネルの軽減に関連するプロセス ポリシーの状態を提供します。 これには、投機的実行とページ結合を含むサイド チャネル攻撃が含まれる場合があります。

構文

typedef struct _PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY {
  union {
    DWORD Flags;
    struct {
      DWORD SmtBranchTargetIsolation : 1;
      DWORD IsolateSecurityDomain : 1;
      DWORD DisablePageCombine : 1;
      DWORD SpeculativeStoreBypassDisable : 1;
      DWORD RestrictCoreSharing : 1;
      DWORD ReservedFlags : 27;
    } DUMMYSTRUCTNAME;
  } DUMMYUNIONNAME;
} PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY, *PPROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY;

メンバー

DUMMYUNIONNAME

DUMMYUNIONNAME.Flags

このメンバーは、システム使用のために予約されています。

DUMMYUNIONNAME.DUMMYSTRUCTNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME.SmtBranchTargetIsolation

TRUE の場合、このプロセスがユーザー モードで実行されている間に、クロス SMT スレッド ブランチターゲットの汚染を防ぐために、ハードウェア軽減策の適用を要求します。

ハードウェアでこのような軽減策のサポートが提供されていない場合、または軽減策がシステム全体で無効になっている場合、このポリシーは無効になります。

プロセスの開始後にこのポリシーを有効にするには、 SetProcessMitigationPolicy を呼び出します。 一度有効にすると無効にすることはできません。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.IsolateSecurityDomain

TRUE の場合、同じセキュリティ コンテキストとして実行されている他のプロセスからでも、このプロセスを個別のセキュリティ ドメインに分離します。 これにより、分岐ターゲットインジェクションのクロスプロセスが防止されます。

ページ結合は、同じセキュリティ ドメイン内のプロセスに限定されます。 このフラグは、一般的なページを除き、 DisablePageCombine ポリシーによってさらに制限されていない限り、プロセス自体に内部的にのみ結合するようにプロセスを効果的に制限します。

プロセスの開始後にこのポリシーを有効にするには、 SetProcessMitigationPolicy を呼び出します。 一度有効にすると無効にすることはできません。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.DisablePageCombine

TRUE の場合、 は、共通ページ (完全に 0 または完全に 1 のページ) を除き、プロセス自体の内部でも、このプロセスのすべてのページ結合を無効にします。

プロセスの開始後にこのポリシーを有効にするには、 SetProcessMitigationPolicy を呼び出します。 一度有効にすると無効にすることはできません。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.SpeculativeStoreBypassDisable

TRUE の場合、このプロセスはユーザー モードで実行されており、プロセス内 SSB を軽減するために、投機的ストア バイパス (SSB) のハードウェア軽減策を有効にするよう要求します。

ハードウェアでこのような軽減策のサポートが提供されていない場合、または軽減策がシステム全体で無効になっている場合、このポリシーは無効になります。

プロセスの開始後にこのポリシーを有効にするには、 SetProcessMitigationPolicy を呼び出します。 一度有効にすると無効にすることはできません。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.RestrictCoreSharing

TRUE の場合、CPU スケジューラは、このプロセス内のスレッドが別のセキュリティ ドメインからのスレッドと同じコアにスケジュールされないようにします。

スケジューラがこの保証を提供できないシステムでは、このポリシーを有効にすることはできません。 たとえば、ハイパーバイザーが 非アーキテクチャ コア共有がないことを報告しない限り、仮想マシン内のプロセスに対してこのポリシーを有効にすることはできません。

プロセスの開始後にこのポリシーを有効にするには、 SetProcessMitigationPolicy を呼び出します。 一度有効にすると無効にすることはできません。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.ReservedFlags

このメンバーは、システム使用のために予約されています。

要件

要件
Header winnt.h