Partilhar via


estrutura PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY (winnt.h)

Essa estrutura de dados fornece a status de políticas de processo relacionadas à mitigação de canais laterais. Isso pode incluir ataques de canal lateral envolvendo execução especulativa e combinação de páginas.

Sintaxe

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;

Membros

DUMMYUNIONNAME

DUMMYUNIONNAME.Flags

Esse membro é reservado para uso do sistema.

DUMMYUNIONNAME.DUMMYSTRUCTNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME.SmtBranchTargetIsolation

Se TRUE , enquanto esse processo estiver em execução no modo de usuário, solicitará a aplicação de mitigações de hardware para evitar a poluição de destino do branch SMT-thread cruzado.

Se o hardware não fornecer suporte para essa mitigação ou a mitigação tiver sido desabilitada em todo o sistema, essa política não terá efeito.

Para habilitar essa política após o início de um processo, você pode chamar SetProcessMitigationPolicy. Ele não pode ser desabilitado depois de habilitado.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.IsolateSecurityDomain

Se TRUE, isola esse processo em um domínio de segurança distinto, mesmo de outros processos em execução como o mesmo contexto de segurança. Isso impede o processo cruzado de injeção de destino de ramificação.

A combinação de páginas é limitada a processos dentro do mesmo domínio de segurança. Esse sinalizador limita efetivamente o processo a combinar apenas internamente com o próprio processo, exceto para páginas comuns e, a menos que seja ainda mais restrito pela política DisablePageCombine .

Para habilitar essa política após o início de um processo, você pode chamar SetProcessMitigationPolicy. Ele não pode ser desabilitado depois de habilitado.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.DisablePageCombine

Se TRUE, desabilita toda a combinação de páginas para esse processo, mesmo internamente para o próprio processo, exceto para páginas comuns (páginas inteiramente 0s ou inteiramente 1s).

Para habilitar essa política após o início de um processo, você pode chamar SetProcessMitigationPolicy. Ele não pode ser desabilitado depois de habilitado.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.SpeculativeStoreBypassDisable

Se TRUE , então, enquanto esse processo estiver sendo executado no modo de usuário e para atenuar o SSB intraprocesso, solicitará que as mitigações de hardware para o Bypass do Repositório Especulativo (SSB) sejam habilitadas.

Se o hardware não fornecer suporte para essa mitigação ou a mitigação tiver sido desabilitada em todo o sistema, essa política não terá efeito.

Para habilitar essa política após o início de um processo, você pode chamar SetProcessMitigationPolicy. Ele não pode ser desabilitado depois de habilitado.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.RestrictCoreSharing

Se TRUE, o agendador de CPU impede que threads dentro desse processo sejam agendados para o mesmo núcleo que threads de outro domínio de segurança.

Essa política não pode ser habilitada em sistemas em que o agendador não é capaz de fornecer essa garantia. Por exemplo, essa política não pode ser habilitada para processos em uma máquina virtual, a menos que o hipervisor reporte a ausência de compartilhamento de núcleo não arquitetônico.

Para habilitar essa política após o início de um processo, você pode chamar SetProcessMitigationPolicy. Ele não pode ser desabilitado depois de habilitado.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.ReservedFlags

Esse membro é reservado para uso do sistema.

Requisitos

Requisito Valor
Cabeçalho winnt.h