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 또는 완전히 1s의 페이지)를 제외하고 이 프로세스에 대해 내부적으로도 이 프로세스에 대한 모든 페이지 결합을 사용하지 않도록 설정합니다.

프로세스가 시작된 후 이 정책을 사용하도록 설정하려면 SetProcessMitigationPolicy를 호출할 수 있습니다. 사용하도록 설정한 후에는 사용하지 않도록 설정할 수 없습니다.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.SpeculativeStoreBypassDisable

TRUE이면 이 프로세스가 사용자 모드에서 실행되는 동안 및 프로세스 내 SSB를 완화하기 위해 SSB(투기적 저장소 바이패스)에 대한 하드웨어 완화를 사용하도록 요청합니다.

하드웨어가 이러한 완화를 지원하지 않거나 완화가 시스템 전체에서 비활성화된 경우 이 정책은 적용되지 않습니다.

프로세스가 시작된 후 이 정책을 사용하도록 설정하려면 SetProcessMitigationPolicy를 호출할 수 있습니다. 사용하도록 설정한 후에는 사용하지 않도록 설정할 수 없습니다.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.RestrictCoreSharing

TRUE이면 CPU 스케줄러는 이 프로세스 내의 스레드가 다른 보안 도메인의 스레드와 동일한 코어로 예약되는 것을 방지합니다.

스케줄러가 이 보장을 제공할 수 없는 시스템에서는 이 정책을 사용하도록 설정할 수 없습니다. 예를 들어 하이퍼바이저가 비 아키텍처 코어 공유가 없다고 보고하지 않는 한 가상 머신의 프로세스에 대해 이 정책을 사용하도록 설정할 수 없습니다.

프로세스가 시작된 후 이 정책을 사용하도록 설정하려면 SetProcessMitigationPolicy를 호출할 수 있습니다. 사용하도록 설정한 후에는 사용하지 않도록 설정할 수 없습니다.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.ReservedFlags

이 멤버는 시스템 사용을 위해 예약되어 있습니다.

요구 사항

요구 사항
헤더 winnt.h