Adam the Automator

Como você lida atualmente com as senhas de administrador local do Windows? Cada sistema Windows tem uma e eles têm as chaves para o reino de cada PC. Como as senhas dos administradores locais não fazem parte do Active Directory (AD), você deve gerenciar cada conta em cada computador separadamente. É uma dor de cabeça.

Muito tempo, as organizações não pensam muito nisso e apenas definem uma senha padrão de administrador em cada máquina Windows. Esta prática, embora conveniente, abre as organizações a um problema muito maior quando essa senha mestre é colocada em mãos erradas. Ter uma senha de administrador local separada em cada computador não impede necessariamente que um indivíduo malicioso acesse um PC, mas impede consideravelmente a exploração lateral de outros PCs.

Microsoft Local Administrator Password Solution (LAPS) pode ajudar.

Neste artigo, você vai aprender como proteger seus computadores AD-joined configurando o LAPS.

Table of Contents

O que é o Microsoft LAPS?

LAPS é uma parte vital para manter um ambiente Windows seguro. LAPS é uma ferramenta que funciona de forma inteligente; ele aleatoriza automaticamente a senha do administrador local em todos os computadores de domínio com LAPS ativado e muda cada senha regularmente.

LAPS garante que você tenha senhas aleatórias de administrador local em todo o seu domínio e evita o movimento lateral de hackers e malware. Agora, você pode pensar que uma senha longa de administrador local no cliente pode protegê-lo contra isso, mas isso não é verdade.

Hackers podem usar um método Pass-The-Hash para se espalhar rapidamente pelo seu domínio e podem até encontrar uma credencial de administrador de domínio usando o mesmo método. LAPs evita esta atividade forçando indivíduos maliciosos a descobrir uma senha para cada máquina individual.

LAPS na Prática

LAPS tem três partes principais:

Atributos do AD Bloqueado

LAPS armazena cada senha de administrador local para cada computador controlado no AD chamado ms-Mcs-AdmPwd. O LAPS também precisa saber quando as senhas expiram para mudá-las, então ele também armazena outro atributo do AD chamado ms-Mcs-AdmPwdExpirationTime. Esses atributos do AD só podem ser lidos/escritos por diretores de AD especificados como um grupo ou um usuário e também podem ser escritos pela conta do computador que está usando a senha.

Configurações do GPO

Para fornecer LAPS em um computador e para alterar a senha o LAPS também tem um conjunto de configurações do GPO. Quando o GPO é ligado a um conjunto de computadores, as configurações do LAPS são distribuídas para cada computador. Quando o computador aplica as configurações de GPO, o LAPS usa um arquivo DLL especial para interpretá-las.

Quando o LAPS vê que a data atual está além da data de expiração da senha ele irá:

  • Randomizar uma nova senha e defini-la como a senha do administrador local.
  • Escrever a nova senha do administrador local no atributo Ms-Mcs-AdmPwd em AD.
  • Escreve uma nova data de expiração para ms-Mcs-AdmPwdExpirationTime.
  • >

Ao usar este método inteligente mas simples os computadores de domínio ficam ainda mais seguros.

Configurar o LAPS

Suficiente informação, vamos começar a ver realmente o que o LAPS pode fazer! Configurar o LAPS não é complicado, mas requer alguns passos que você vai aprender neste tutorial. Eles são:

  1. Instalando as Ferramentas de Gerenciamento do LAPS na sua máquina de administração.
  2. Extendendo o esquema do AD para adicionar os dois atributos personalizados do AD que o LAPS usa.
  3. Configurando privilégios apropriados para vários componentes no AD.
  4. Construindo o GPO do LAPS que será aplicado aos computadores Windows.
  5. Desenvolvendo a extensão da GPO LAPS para computadores Windows aplicáveis.

A partir do momento em que você estiver com os passos acima, você terá um ambiente LAPS totalmente funcional configurado e pronto para ir!

Prrequisitos

Neste artigo, você estará configurando o LAPS de verdade. Se você gostaria de seguir adiante, por favor certifique-se de satisfazer alguns pré-requisitos primeiro.

  • Um Domínio AD (2003 e acima)
  • Um computador rodando Windows (10 ou Server 2012+ é recomendado) tem RSAT para Active Directory instalado.
  • Deixar acesso a uma conta que é tanto um membro dos Administradores de Domínios AD quanto dos grupos de Administradores de Esquemas.

Todos os exemplos neste artigo serão usando um domínio AD chamado contoso.com.

A melhor prática para o grupo de administradores de esquemas é ser um membro dele somente quando você precisar das permissões.

Instalar Ferramentas de Gerenciamento LAPS da Microsoft

Para começar, você deve primeiro instalar as Ferramentas de Gerenciamento LAPS no seu computador de administração. Estas ferramentas de gestão irão instalar tanto a extensão GPO do LAPS (se seleccionada) como as ferramentas de gestão para configurar o LAPS.

>

  1. Inicie descarregando o ficheiro LAPS.x64.msi e execute-o como administrador e clique em Next.
Instalando o Microsoft LAPS

2. Pressione Next até chegar à configuração personalizada e depois clique em Management Tools and Entire feature will be installed on local hard drive to install both of these components. Se você não quiser que a máquina atual seja gerenciada pelo LAPS então selecione AdmPwd GPO Extension.

Click Management Tools

3. Clique em Next até que a instalação termine e saia do instalador.

Tem agora instaladas as extensões GPO do LAPS (se selecionadas) e suas ferramentas de gerenciamento e podemos agora começar a estender o esquema AD e adicionar nossos GPOs.

Estendendo o esquema AD

Como mencionado anteriormente, o LAPS usa dois atributos AD chamados ms-Mcs-AdmPwd e ms-Mcs-AdmPwdExpirationTime. Esses dois atributos não são padrão e devem ser adicionados ao esquema AD.

  1. Comece adicionando um membro dos grupos Admins do Domínio ao grupo Admins do Esquema se a conta ainda não for um membro. Vamos chamar a isto a sua “conta de admin”.
  2. Inicie PowerShell como sua conta de admin e importe o módulo AdmPwd PowerShell executando Import-module AdmPwd.PS.
  3. Após o módulo ser importado, execute o comando Update-AdmPwdADSchema para actualizar o esquema AD adicionando os dois atributos AD. Você pode ver a saída na seguinte captura de tela.
Powershell Admin Account

Agora você estendeu nosso esquema AD para suportar LAPS e está pronto para definir permissões no Active Directory.

Configurando Permissões do Active Directory

Cada computador precisa da habilidade de atualizar sua senha de administrador local e o atributo AD de tempo de expiração. Para fazer isso, cada computador deve ter permissão de autoescrita para os atributos AD ms-Mcs-AdmPwd e ms-Mcs-AdmPwdExpirationTime. Felizmente, a maioria deste trabalho é facilmente feita com o módulo AdmPwd PowerShell.

Permitir que as máquinas salvem sua senha

Primeiro, certifique-se de que cada computador possa salvar sua senha para o atributo AD ms-Mcs-AdmPwd e atualizá-la quando essa senha expirar no atributo AD ms-Mcs-AdmPwdExpirationTime. O módulo AdPwd PowerShell tem um comando que você pode definir essas permissões chamado Set-AdmPwdComputerSelfPermission por unidade organizacional (OU) que se aplica a todas as OUs filhas.

No PowerShell, execute Set-AdmPwdComputerSelfPermission -OrgUnit 'OU=Workstations,DC=contoso,DC=com' lembrando de atualizar sua OU específica e nome de domínio.

Atualizar UO e nome de domínio

Se você gostaria que o LAPS controlasse mais UDs, repita o comando acima para cada UD em AD.

Bloqueio de Atributos do AD através da busca de direitos estendidos

Para garantir que somente os usuários e grupos que você deseja ter permissões para ler e redefinir a senha do administrador local de cada computador, você precisa auditar quem tem acesso. Especificamente, você precisa saber que somente as contas que precisam ter “Direitos Estendidos” a têm.

Para encontrar contas com direitos estendidos, execute Find-AdmPwdExtendedRights -OrgUnit 'OU=Workstations,DC=contoso,DC=com' | Select -ExpandProperty ExtendedRightHolders assegurando a substituição do seu OU e nome de domínio.>

Estações de trabalho OU

A permissão do serviço MDT de fato precisa do direito estendido, mas joe-the-admin não. Agora você precisa remover a permissão para joe-the-admin.

Você precisará repetir este processo para todas as OUs em que você definiu a permissão de auto-escrita em um passo anterior.

Removendo Direitos Extendidos

Após ter identificado cada conta para remover direitos estendidos, agora é hora de realmente fazê-lo.

  1. Abrir Usuários e Computadores do Active Directory e clique em View no menu superior e assegure-se de que Recursos Avançados está ativado. Quando você habilitar os recursos avançados, você verá todas as OUs tipicamente ocultas, como mostrado na seguinte captura de tela.
OUUs ocultas

2. Clique com o botão direito do mouse sobre a OU que você deseja remover a extensão direita e clique em Propriedades.

Clicar direito na OU para remover

3. Clique na guia Segurança e depois clique no botão Avançado.
4. Encontre a conta ou grupo para o qual você deseja remover os direitos estendidos e remova-o selecionando-o e clicando em Remove.

Security Tab for Account Removal

5. Repita estes passos conforme necessário para todos os diretores com direitos estendidos.

Dando permissão para ler e redefinir a senha do administrador local

Agora você tenha se certificado de que apenas contas apropriadas tenham direitos estendidos, agora você precisa criar dois grupos AD para ler e redefinir a senha do administrador local chamado LAPS Workstations Password Read e LAPS Workstations Password Reset.

Note que os nomes dos grupos especificados aqui não são obrigatórios. Você é livre para usar qualquer nome de grupo que desejar.

Com um console PowerShell ainda aberto com sua conta de administrador, digite os seguintes comandos para dar aos dois grupos AD permissão para ler a senha do administrador local para computadores na OU.

PS> Set-AdmPwdReadPasswordPermission -OrgUnit 'OU=Workstations,DC=contoso,DC=com' -AllowedPrincipals "LAPS Workstations Password Read"PS> Set-AdmPwdResetPasswordPermission -OrgUnit 'OU=Workstations,DC=contoso,DC=com' -AllowedPrincipals "LAPS Workstations Password Reset" 

Você agora habilitou os grupos AD acima para ler e redefinir as senhas do administrador local para computadores na OU das Estações de Trabalho. Agora você precisa adicionar os administradores ou grupos necessários para ler ou redefinir as senhas.

Criando uma Central Store para modelos de política de grupo

Para que o LAPS se habilite uma vez instalado nos computadores, primeiro crie uma política de grupo, importando os modelos de política de grupo para a PolicyDefinition store. A loja PolicyDefinition é uma pasta localizada em todos os controladores de domínio.

Nunca habilite uma GPO LAPS que tenha como alvo os controladores de domínio. Não é suportado e pode causar problemas inesperados.

  1. Pick out a domain controller in AD; any domain controller will work.
  2. Ensure a \\contoso.com\SYSVOL\Policies\PolicyDefinitions exists. Se não, crie-o agora.
  3. Copie o conteúdo de C:\Windows\PolicyDefinitions no seu computador de administração (aquele em que você instalou o LAPS) para \\contoso.com\SYSVOL\Policies\PolicyDefinitions folder no controlador de domínio.

Criando a GPO

Agora vamos copiar os modelos da GPO LAPS para a Central Store (pasta PolicyDefinitions).

>

    >

  1. Abrir gestão de políticas de grupo sob a sua conta de administração, clique com o botão direito do rato na OU que pretende activar o LAPS e clique em Link an Existing GPO…

>

Group Policy Management

2. Navegar para Configuração do Computador -> Modelos Administrativos -> LAPS e definir Enable local admin password management to Enabled. Se você tiver diferentes requisitos para a complexidade da senha, edite as Configurações de Senha de acordo.

Link GPO para todas as OUs

Você está quase pronto! Agora ligue esta GPO a todas as OUs que você quer usar o LAPS em.

Desenvolvendo a extensão da GPO LAPS

Após a GPO ser aplicada a todas as OUs aplicáveis com computadores nelas, você agora precisa implantar a extensão da GPO LAPS. Você tem algumas maneiras diferentes de instalar esta extensão instalando o MSI (como mostrado anteriormente) ou registrando o arquivo DLL do LAPS.

Se você optar por instalar o MSI, em cada computador dentro de uma OU controlada pelo LAPS, execute o seguinte comando para ativar o LAPS.

> msiexec /q /i \server\share\LAPS.x64.msi

Se você optar por ativar o LAPS registrando a DLL, você pode fazer isso com o seguinte comando.

> regsvr32.dll \server\share\AdmPwd.dll

Você pode usar qualquer ferramenta de execução remota que você tenha para executar estes comandos nos computadores.

Implementando o LAPS MSI com uma GPO

Usar uma GPO é o método mais fácil para garantir que a extensão da GPO do LAPS esteja instalada em todos os computadores.

  1. Copiar o LAPS.x64.msi para uma partilha de rede acessível por todos os computadores de domínio.
  2. Abrir Gestão de Políticas de Grupo no seu computador administrador e criar uma GPO chamada Install LAPS ou algo semelhante.

Criar GPO chamada Install LAPS

3. Clique com o botão direito do mouse na GPO Instalar LAPS, clique em Editar e navegue até Configuração do Computador -> Políticas -> Configurações do Software -> Instalação do Software.

Instalação do Software GPO LAPS

4. Clique com o botão direito do mouse em Instalação do Software e navegue até New-> Package…

GPO New Package

5. Navegue até a partilha para a qual copiou o LAPS.x64.msi, seleccione-a, clique em OK e seleccione Assigned.

Assigning LAPS.x64.msi

6. Agora ligue o GPO às mesmas OUs para as quais configurou o LAPS. Agora você está pronto para testar o LAPS!

Testando o LAPS

Para garantir que o LAPS está funcionando como projetado nos computadores controlados, vamos agora forçar um dos computadores a aplicar a GPO acima mencionada e ver o que acontece.

  1. Reiniciar um computador que está localizado sob uma das OUs que você acabou de configurar. Mais uma vez, o computador deve começar a instalar o LAPS.
  2. Antes de instalar o LAPS no computador, reinicie a máquina mais uma vez e abra um console PowerShell como administrador no seu computador de administração como uma conta que é membro dos grupos AD da LAPS Workstation Password Read e LAPS Workstation Reset AD Password. Se tudo correu bem, você verá algo similar à saída na seguinte captura de tela.
Saída de Instalação do LAPS

4. Agora tente entrar no computador controlado pelo LAPS com a senha exibida acima. Se funcionou, você deve estar dentro.
5. Agora tente redefinir a senha, executando Reset-AdmPwdPassword <ComputerName> e reiniciando o computador. Veja como mudou as senhas na seguinte captura de tela?

LAPS Password Reset

Você agora tem o LAPS funcionando no seu ambiente. E embora a administração seja bastante fácil, há algumas coisas que você deve saber sobre…

Dicas e truques para usar o LAPS for Real

Embora a configuração acima seja suficiente para a maioria dos ambientes menores, ela pode ser muito insegura ou não oferecer o nível de auditoria necessário para organizações maiores. Aqui estão algumas dicas para fazê-lo funcionar no mundo real.

1. Ative a Auditoria

Auditar quando alguém lê ou redefine uma senha é importante, especialmente considerando que você pode ligar alarmes a ela se alguém ler a senha de todos os computadores. Felizmente o módulo AdmPwd nos fornece uma cmdlet para habilitar apenas isso.

PS> Set-AdmPwdAuditing -AuditedPrincipals Everyone -OrgUnit "OU=Workstations,DC=contoso,DC=com"

2. Certifique-se de que nenhum usuário pode ler diretamente o atributo ms-mcs-AdmPwd AD

Uma maneira é garantir que um usuário não possa ler o atributo ms-mcs-AdmPwd AD é criar um método de auto-serviço para obter a senha de administrador local de um computador. Enquanto estiver fora do escopo deste artigo, verifique ferramentas como JEA ou WebJEA se você não tem um portal de auto-serviço existente adequado para isto.

3. Redefinir o atributo Ms-Mcs-AdmPwdTime Durante Imagens em Disco

Você deve lembrar de redefinir o atributo Ms-Mcs-AdmPwdTime ao reimaginar um computador controlado por LAPS, caso contrário, ele não acionará a mudança de senha e manterá a senha de administrador local dada pela imagem. Ele irá, no entanto, disparar após a expiração do Ms-Mcs-AdmPwdTime.

Você pode usar o seguinte comando PowerShell para resetar o ExpirationTime sem o módulo AdmPwd:

# With RSAT Get-ADComputer Workstation1 | Set-ADObject -Replace @{"ms-mcs-AdmPwdExpirationTime"=(Get-Date)} # Without RSAT$Computer = New-Object DirectoryServices.DirectoryEntry "LDAP://CN=Workstation1,OU=Workstations,DC=contoso,DC=com"$Computer.'ms-Mcs-AdmPwdExpirationTime'.Clear()$Computer.CommitChanges()

4. Lembre-se que o atributo ms-Mcs-AdmPwd fica na Lixeira AD

Quando você exclui um objeto no AD e tem a Lixeira AD ativada, o AD normalmente remove atributos importantes; felizmente o ms-Mcs-AdmPwd está protegido contra isso!

5. LAPS não é para Acesso Temporário

Embora tentador, LAPS não é para dar acesso temporário a fornecedores, usuários e outros tipos de contas. Em vez de usar LAPS, use um grupo AD que é um administrador local daquele computador específico e use o TimeToLive em membros de grupo.

Conclusão

Agora você aprendeu como implementar LAPS, definindo suas permissões e algumas dicas e truques para torná-lo mais seguro. Com um ambiente onde o LAPS é implantado, todas as senhas dos administradores locais mudam regular e automaticamente. Isto reduz muito os riscos de ter um computador com um domínio tomado por hackers ou malware e, esperemos, salva-o de muitas dores de cabeça.

Deixe uma resposta

O seu endereço de email não será publicado.