Notas de controle de acesso do Windows

O modelo de segurança do Windows exige que, quando um encadeamento abrir um objeto (como um arquivo, processo, área de trabalho etc.), ele deve especificar quais tipos de ações ele espera executar no objeto. O gerenciador de objetos chama o SRM (Secure Reference Monitor) para executar a verificação de acesso com base nos requisitos de acesso esperados por um encadeamento. Se permitir esse acesso, atribui um identificador ao processo do encadeamento, de modo que o encadeamento ou outro processo O encadeamento pode executar operações adicionais no objeto por meio desse identificador. O SRM é um componente do Ntoskrnl.exe e funciona no modo kernel, sendo responsável por: definir a estrutura de dados do token de acesso para representar um ambiente seguro, executar verificações de acesso aos objetos, gerenciar privilégios e gerar todas as mensagens de auditoria de segurança resultantes .

 

Primeiro, o identificador de segurança SID

https://docs.microsoft.com/en-us/windows/security/identity-protection/access-control/security-identifiers

O Windows usa o SID para identificar entidades (entidades de segurança) que executam várias ações no sistema.Os usuários têm SIDs, grupos de usuários locais, grupos de usuários do domínio, computadores locais, domínios, membros do domínio e serviços.

Por exemplo, o Windows usa um SID exclusivo para identificar uma conta e um grupo de contas.Depois disso, a operação executada pela conta ou pelo grupo de contas (como acessar uma pasta), o Windows deve verificar sua identidade e confirmar se tem permissão para operar. O SID de uma conta ou grupo local é gerado pela agência de segurança local (LSA) no computador e armazenado na área de segurança do registro junto com outras informações da conta; o SID da conta ou grupo de domínio é gerado pela agência de segurança do domínio

(LSA no controlador de domínio) é gerado e armazenado no Active Directory na forma de atributos de objetos de usuário ou grupo.

 

O formato dos SIDs comuns é o seguinte (os RIDs não estão necessariamente disponíveis):

vista procexp SID:

 

 

Verifique o  SID da conta de serviço local no registro :

 

O registro para exibir o RID da conta de usuário local:

 

Geralmente, o RID 500 é Administrador, 501 é Convidado e 503 é DefalutAccount.O RID de contas e grupos de usuários personalizados começa em 1000.

Além disso, o Windows predefinirá algumas contas e grupos, como NT AUTHORITY \ Local Service S-1-5-19 , aqui você pode exibir o SID comum:

https://support.microsoft.com/en-au/help/243330/well-known-security-identifiers-in-windows-operating-systems

https://docs.microsoft.com/en-us/windows/security/identity-protection/access-control/security-identifiers#well-known-sids

 

Segundo, controle obrigatório de integridade (MIC, controle obrigatório de integridade)

Para o mesmo usuário, abra chrome.exe para baixar um programa desconhecido e abra word.exe, as duas operações têm riscos diferentes e, obviamente, as permissões do processo também devem ser diferentes; por esse motivo, o Windows usa o controle de integridade obrigatório (MIC) para controlar o mesmo usuário Acesso de diferentes processos para proteger objetos.

 

O mecanismo MIC consiste em duas partes: nível de integridade e política de aplicação.Esse mecanismo é complementar ao controle de acesso gratuito e ocorre antes da verificação de acesso à lista de controle de acesso livre (DACL). 

2.1 Nível de integridade

 

Os assuntos de segurança e os objetos de segurança recebem níveis de integridade designados, que são usados ​​para descrever os níveis de acesso de visitantes e respondentes.

1. Nível de integridade do processo e estratégia de imposição de token ( TOKEN_MANDATORY_POLICY )

Cada processo possui um nível de integridade em seu token de acesso, propagado de acordo com as seguintes regras:

 

 

Além do nível de integridade do processo, há uma estratégia obrigatória:

 

 

 

2. Nível de integridade do objeto e estratégia de aplicação do sistema

O objeto de segurança possui um nível de integridade na lista de controle de acesso do sistema (SACL) de seu descritor de segurança

  • Para ser compatível com versões mais antigas da janela e facilitar os desenvolvedores, todos os objetos têm um nível de integridade implícito "médio"
  • Quando um processo cria um objeto, se o nível de integridade não for especificado, o sistema determinará a integridade do objeto com base na integridade no token do processo. Se o nível de integridade do processo for "Médio" ou superior, o nível de integridade implícito do objeto ainda será "Médio"; se o nível de integridade do processo for menor que "Médio", ele será exibido para corresponder ao token. Objetos no nível de integridade.

  Por que o objeto não pode herdar o nível de integridade "alto" do criador? Se o administrador desabilita o UAC e cria um objeto, o processo está no nível de integridade "alto", se o objeto também herda o nível de integridade "alto", quando o UAC é ativado novamente O administrador não poderá modificar este objeto.

  • Os objetos também podem ter um nível de integridade definido explicitamente pelo sistema ou pelo criador do objeto. Quando objetos como processos, threads, tokens e tarefas são criados, o kernel atribui um nível de integridade exibido para que processos com o mesmo nível de integridade no mesmo usuário não possam acessar ou modificar esses objetos.

Além dos níveis de integridade, os objetos de segurança também possuem uma política obrigatória:

 

 

 Você pode usar o accesschk.exe -v para exibir o nível de integridade e as políticas de imposição de objetos como processos, arquivos e registro:

 

 

 3. Token de Acesso

O SRM usa objetos de token para identificar o contexto de segurança de um processo ou encadeamento.O conteúdo mais importante contido no token é o seguinte:

1. Origem do token, descrevendo a entidade que criou o token

2. O token principal ainda é um token de imitação e o nível de imitação do token de imitação (descrito mais adiante)

3. ID do token, equivalente ao identificador do token, cada token é exclusivo.

4. ID de autenticação, LSASS é para todos os tokens herdados do mesmo token de login inicial e copia seu ID de autenticação para o programa para verificar se o token e outros tokens pertencem à mesma sessão de login.

5. Modifique o ID Sempre que as características de um token forem modificadas, o ID modificado será atualizado.

6. Tempo de expiração, tempo de expiração do token

7. ID da sessão

8. Vários sinalizadores determinam certos comportamentos dos mecanismos UAC e UIPI (descritos mais adiante)

9. Sessão de login

10. Estratégia de aplicação, correspondente à estratégia de aplicação de token mencionada na segunda parte

11. O grupo principal padrão e a DACL padrão, o grupo principal padrão e a DACL padrão dos objetos criados pelo processo, para que não seja necessário exibir e especificar essas informações sempre que o objeto for criado.

12. SID da conta de usuário, conta à qual o processo pertence

13. Group SID, ao qual a conta de usuário pertence

14. SID restrito, marque esse SID como somente negar, quando a verificação de acesso for feita posteriormente, apenas as ACEs negadas são correspondidas e as ACEs permitidas são ignoradas, o que é usado apenas para negação.

15. Privilégios (descritos mais adiante)

 

 

 

 

 

 

 

 

Token de zombaria

https://www.anquanke.com/post/id/190207#h2-8

https://www.cnblogs.com/MyGuazi/p/11871420.html

Acho que você gosta

Origin www.cnblogs.com/ring-lcy/p/12740907.html
Recomendado
Clasificación