Como saber se minha conta de usuário é uma conta privilegiada?

0

Eu estou procurando por uma resposta de porcas e parafusos para isso, então se isso significa cavar em SDDL (ou qualquer outra coisa ... eu quero ver o "token"), eu estou bem com isso.

As configurações de política do UAC têm duas opções de comportamento de consentimento:

Controle de conta de usuário: comportamento do prompt de elevação para administradores no modo de aprovação de administrador Controle de Conta de Usuário: Comportamento do prompt de elevação para usuários padrão

Como posso saber (enquanto conectado como usuário) se uma conta de usuário está atualmente atribuída a um token de administrador para que não seja considerada uma conta de usuário padrão ou se for um administrador que não está no modo de aprovação do administrador?

    
por lightwing 11.01.2017 / 16:20

1 resposta

0

A melhor solução que encontrei até agora é uma combinação de coisas:

  • whoami / all

    1. procure membros do grupo incorporados \ administradores
  • verifique o log de eventos de segurança para os eventids 4688 e 4689

    1. Certifique-se de ativar o controle do processo de auditoria localmente: configurações de segurança secpol.msc - > políticas locais - > política de auditoria
    2. Get-EventLog -LogName Security | Where-Object {($_.eventid -eq 4688) -or ($_.eventid eq 4689)}
    3. Procure o tipo de elevação de token na mensagem desses eventos:
  • "%% 1936" O tipo 1 é um token completo sem privilégios removidos ou grupos desativados. Um token completo só é usado se o Controle de Conta de Usuário estiver desabilitado ou se o usuário for a conta interna de Administrador ou uma conta de serviço.
  • "%% 1937" O tipo 2 é um token elevado sem privilégios removidos ou grupos desativados. Um token elevado é usado quando o Controle de Conta de Usuário está habilitado e o usuário opta por iniciar o programa usando Executar como administrador. Um token elevado também é usado quando um aplicativo é configurado para sempre exigir privilégios administrativos ou sempre exigir privilégios máximos, e o usuário é um membro do grupo Administradores.
  • "%% 1938" O tipo 3 é um token limitado com privilégios administrativos removidos e grupos administrativos desativados. O token limitado é usado quando o Controle de Conta de Usuário está ativado, o aplicativo não requer privilégio administrativo e o usuário não escolhe iniciar o programa usando Executar como administrador.

Obrigado aos comentários do @Clijsters acima e ao autor da entrada do blog aqui: link

Nota no script do powershell no blog: o script dela não funciona se você copiá-lo e colá-lo. Você precisará fazer alguns ajustes por conta própria.

Nota sobre as versões do sistema operacional Windows: Quanto ao Windows Vista e 7, estou encontrando informações diferentes sobre as entradas do log de eventos. As descobertas acima são baseadas em meus testes no Windows 10. Pesquisando pela Internet, no Windows 7 e Vista, as entradas do log de eventos parecem ser mais diretas em relação aos dados Token Elevation Type, conforme descrito em "Como audito a elevação? " seção deste artigo: link Em vez de ofuscar o tipo de token, o Win7 / Vista aparentemente o fornece diretamente como 1, 2 ou 3. YMMV

    
por 12.01.2017 / 14:09