Muito se fala em permissionamento de usuários e analistas em redes Microsoft nos últimos anos e a cada debate, me deparo com inúmeros tutoriais e receitas de bolo sobre o assunto. É um tema que sem sombra de dúvidas, aguça a curiosidade de muitos atuantes da TI, em especial profissionais com direcionamento em plataforma e infraestrutura. O assunto sempre gera curiosidade e polêmica. O LAPS da Microsoft, cobrado inclusive pela prova 70-744, pode ajudar com a gestão de administradores locais em estações de trabalho e servidores de uma rede com domÃnio ativo. Vale realmente a pena saber mais sobre esta solução e sua usabilidade.
LAPS, ou Local Administrator Password Solution, é a solução ofertada pela Microsoft que permite ao administrador de redes (ou Arquiteto de Soluções), gerenciar senhas relacionadas à s contas de administrador local incorporadas em computadores da sua organização. O LAPS permite uma melhora considerável da segurança nos computadores e estações locais, garantindo que a conta de administrador local de cada computador tenha uma senha exclusiva (ou seja, uma senha diferente para cada computador membro do domÃnio). É possÃvel refinar de forma agressiva o formato da implementação de senhas para estações de trabalho, segmentado a administração em departamentos, prédios, filiais, andares e até mesmo por nÃvel de criticidade. As possibilidade de organização dos passwords é enorme e extremamente interessante.
A solução gerencia automaticamente a senha do administrador local nos computadores unidos pelo domÃnio, de modo que a senha se torna:
- Única em cada computador gerenciado
- Gerada aleatoriamente sem interação do Administrador ou técnico
- Armazenado de forma segura na infraestrutura AD (não é mais necessário manter planilhas de Excel ou arquivos em Access com a base de senhas)
A solução é baseada apenas em infraestrutura AD, portanto, não há necessidade de instalar e suportar outras tecnologias. A solução em si é uma extensão de lado do cliente de polÃtica de grupo que está instalada em máquinas gerenciadas e executa todas as tarefas de gerenciamento. As ferramentas de gerenciamento fornecidas com a solução permitem uma fácil configuração e administração.
Computer acœunt AD
Admin
Bud iration T ime
Su pp ortgtaff
Act Directory
O núcleo da solução é GPO Client Side Extension (CSE) que executa as seguintes tarefas durante a atualização do GPO:
- Verifica se a senha da conta de administrador local expirou ou não e então gera a nova senha quando a senha antiga expirou ou é necessária para ser alterada antes da expiração
- Altera a senha da conta do administrador
- Relata a senha para senha do Active Directory, armazenando-a em um atributo confidencial com uma conta de computador em AD
- Relata o próximo tempo de expiração para o Active Directory, armazenando-o em atributo confidencial com conta de computador em AD
- A senha pode ser lida a partir de AD pelos usuários que estão autorizados a fazê-lo
- A senha pode ser forçada a ser alterada por usuários elegÃveis
Cada computador membro de um domÃnio mantém uma conta de administrador local configurada (salvo controladores de domÃnio que não possuem conta local). Esta é a conta configurada quando é efetuado a implantação do Windows no computador pela primeira vez, ou é configurado automaticamente quando utilizado ferramentas de implantação de software, como o Configuration Manager, por exemplo. A conta de administrador local permite que o pessoal das operações de TI façam login no computador caso a conectividade não possa ser estabelecida no domÃnio.
O gerenciamento de senhas para a conta de Administrador local de cada computador ou estação de trabalho de uma organização pode ser uma árdua tarefa, principalmente considerando uma organização com cerca de 5000 estações de trabalho, significando que existem 5000 contas de Administrador local separadas para gerenciar. O que acaba acontecendo é que as organizações atribuem uma única senha de conta de administrador local comum a todas as contas de administrador locais.
A desvantagem desta abordagem é que as pessoas além da equipe de operações de TI geralmente descobrem esta senha e, em seguida, usam para ganhar acesso de Administrador local não autorizado a computadores em sua organização. Em algumas de minhas implementações com Windows Server 2012 e 2012 R2, foi utilizado uma GPO que alterava a senha de administrador local de 45 em 45 dias, dificultando a quebra, entretanto ainda assim existe a possibilidade de uma quebra dentro desse perÃodo. Caso a quebra da senha ocorra dentro desse perÃodo, o invasor ainda teria acesso a senha de Administrador de qualquer estação de trabalho. Abaixo temos um exemplo de onde fica localizado a senha da estação de trabalho ou servidor sob efeito do LAPS.
Soluções de senha de administrador local (LAPS) fornece à s organizações um repositório central para senhas de administrador local para máquinas de membros de domÃnio. Quando implantado, o LAPS fornece os seguintes recursos:
• As senhas do administrador local são exclusivas em cada computador gerenciado pelo LAPS.
• As senhas do administrador local são aleatorizadas e alteradas regularmente.
• LAPS armazena senhas e segredos de administrador local de forma segura dentro do AD DS.
• O acesso a senhas e segredos é controlado por permissões configuráveis.
• As senhas recuperadas pelo LAPS são transmitidas ao cliente de forma segura e criptografada.
O LAPS é suportado em todas as versões x86 ou x64 Windows Client e Windows Server, requerendo nÃvel funcional de domÃnio do Active Directory do Windows Server 2003 ou superior e funciona apenas com computadores que são membros de um domÃnio do Active Directory (ou seja, não funciona sem que as estações de trabalho estejam no AD).
O LAPS precisa ser instalado em um servidor e enviado às estações de trabalho através de uma agente em formato .MSI. Será necessário configurar o agente LAPS através de uma Extensão lateral do Cliente de Diretiva de Grupo. Você instala o cliente LAPS usando um arquivo MSI em computadores clientes que você gerenciará.
LAPS requer uma atualização para o esquema do Active Directory. Você executa esta atualização executando o cmdlet Update-AdmPwdADSchema, que está incluÃdo em um módulo PowerShell disponibilizado quando você instala LAPS em um computador. A pessoa que executa este cmdlet deve ser um membro do grupo Administradores de Esquema e este cmdlet deve ser executado em um computador que esteja no mesmo site do Active Directory que o computador que detém a função de mestre de esquema para a floresta. O LAPS requer que o .NET Framework 4.0 e o Windows PowerShell 2.0 ou posterior estejam instalados nos computadores para os quais gerenciará as senhas do administrador local.
O processo LAPS ocorre cada vez que as atualizações de polÃticas de grupo ocorrem. Quando é realizado uma atualização de polÃtica de grupo, ocorrem as seguintes ações:
1. LAPS determina se a senha da conta de administrador local expirou.
2. Se a senha não expirou, o LAPS não faz nada.
3. Se a senha expirou, o LAPS executa as seguintes etapas:
3.1. Muda a senha de administrador local para um novo valor aleatório com base nos parâmetros configurados para senhas de administrador locais.
3.2. Transmite a nova senha para o AD DS, onde é armazenado em um atributo confidencial especial associado à conta de computador do computador que atualizou sua senha da Conta de Administrador local.
3.3. Transmite a nova data de validade da senha para o AD DS, onde é armazenado em um atributo confidencial especial associado à conta de computador do computador que atualizou sua senha de conta de administrador local. A senha pode ser lida no AD DS por usuários autorizados. Também é possÃvel que o usuário autorizado desencadeie uma mudança de senha do administrador local em um computador especÃfico.
Existe uma série de etapas necessárias para se configurar e gerenciar senhas pelo LAPS. O primeiro conjunto de etapas envolve a configuração do AD DS. Deve-se selecionar uma determinada OU que possua os computadores para que receba a configuração de atribuição (Set-AdmPwdComputerSelfPermission). Esta configuração é aplicada diretamente a OU, atribuindo a capacidade de atualização de senhas das contas de administrador local quando houver sua expiração. Abaixo temos um exemplo do comando para tal atividade:
Exemplo: Set-AdmPwdComputerSelfPermission -Identity "RH"
Neste exemplo estou habilitando o recurso LAPS dentro da OU RH. Qualquer computador adicionado a esta Unidade Organizacional, receberá automáticamente as configurações.
Por padrão, as contas que são membros dos grupos Administradores de DomÃnio e Administradores da Empresa podem acessar e visualizar senhas armazenadas. Você usa o cmdlet Set-AdmPwdReadPasswordPermission para fornecer grupos adicionais com a capacidade de visualizar a senha do administrador local. Por exemplo, para atribuir ao grupo RH_ITOps a capacidade de visualizar a senha de administrador local em computadores na OU RH, use o seguinte comando:
Exemplo: Set-AdmPwdReadPasswordPermission -Identity "RH" -AllowedPrincipals "RH_ITOps"
O próximo passo é executar o instalador para instalar os modelos de GPO no AD DS. Depois de instalar os modelos, você pode configurar as seguintes polÃticas:
• Habilite o gerenciamento local de senha de administrador. Esta polÃtica permitirá LAPS e permitirá que você gerencie a senha da conta de administrador local de forma centralizada.
• Configurações de senha. Esta polÃtica permite que você configure a complexidade, o comprimento e a idade máxima da senha de administrador local. O padrão é que letras maiúsculas e minúsculas, números e caracteres especiais são usados. O comprimento da senha padrão é de 14 dias e a idade máxima da senha padrão é de 30 dias.
• Não permitir o tempo de expiração da senha mais longo do que o necessário. Quando ativada, a senha será atualizada de acordo com a polÃtica de expiração de senha do domÃnio.
• Nome da conta de administrador para gerenciar. Use esta polÃtica para identificar contas de administrador local personalizadas. Você pode visualizar senhas atribuÃdas a um computador usando um dos seguintes métodos:
• Visualize as propriedades da conta do computador com recursos avançados ativados nos usuários e computadores do Active Directory examinando o atributo ms-Mcs-AdmPwd.
• Use o aplicativo LAPS UI App.
• Use o cmdlet Get-AdmPwdPassword Windows PowerShell, disponÃvel através do módulo AdmPwd.PS, que está disponÃvel quando você instala LAPS.
Link para baixar
LAPS.x64.msi
LAPS.x86.msi
https://www.microsoft.com/en-us/download/details.aspx?id=46899
Este processo deve ser feito diretamente pelo controlador de domÃnio e envolve o preparo do Schema do AD apos a instalação do LAPS.x64.msi. Para executar tais comandos utilize o PowerShell com permissão elevada.
Import-Module admpwd.ps
Update-AdmPwdADSchema
Set-AdmPwdComputerSelfPermission -Identity “Sydney_Computers”
Os recursos da solução incluem:
- Segurança:
Senha aleatória que muda regularmente em máquinas gerenciadas
Mitigação efetiva do ataque Pass-the-hash
A senha está protegida durante o transporte via criptografia Kerberos
Senha está protegida em AD pela AD ACL, portanto, o modelo de segurança granular pode ser facilmente implementado
- Gerenciamento
Parâmetros de senha configuráveis: idade, complexidade e comprimento
Capacidade de forçar a reinicialização da senha em cada máquina
Modelo de segurança integrado com ACL AD
UI de uso final pode ser qualquer ferramenta de gerenciamento de AD de escolha, além de ferramentas personalizadas (PowerShell e Fat client) são fornecidas
Proteção contra exclusão de conta de computador
Fácil implementação e mÃnima pegada
- Extensibilidade:
A solução pode ser estendida para fornecer funcionalidades adicionais, tais como:
criptografia adicional de senha armazenada em AD
Histórico de senha
UI da Web
A solução tem os seguintes requisitos:
- Active Directory:
O Windows 2003 SP1 e acima
- Máquinas gerenciadas:
O Windows Vista com SP atual ou superior; X86 ou x64
O Windows 2003 com SP atual e acima; X86 ou x64 (Itanium não suportado)
- Ferramentas de gerenciamento:
O .NET Framework 4.0
O PowerShell 2.0 ou superior
LAPS, ou Local Administrator Password Solution, é a solução ofertada pela Microsoft que permite ao administrador de redes (ou Arquiteto de Soluções), gerenciar senhas relacionadas à s contas de administrador local incorporadas em computadores da sua organização. O LAPS permite uma melhora considerável da segurança nos computadores e estações locais, garantindo que a conta de administrador local de cada computador tenha uma senha exclusiva (ou seja, uma senha diferente para cada computador membro do domÃnio). É possÃvel refinar de forma agressiva o formato da implementação de senhas para estações de trabalho, segmentado a administração em departamentos, prédios, filiais, andares e até mesmo por nÃvel de criticidade. As possibilidade de organização dos passwords é enorme e extremamente interessante.
A solução gerencia automaticamente a senha do administrador local nos computadores unidos pelo domÃnio, de modo que a senha se torna:
- Única em cada computador gerenciado
- Gerada aleatoriamente sem interação do Administrador ou técnico
- Armazenado de forma segura na infraestrutura AD (não é mais necessário manter planilhas de Excel ou arquivos em Access com a base de senhas)
A solução é baseada apenas em infraestrutura AD, portanto, não há necessidade de instalar e suportar outras tecnologias. A solução em si é uma extensão de lado do cliente de polÃtica de grupo que está instalada em máquinas gerenciadas e executa todas as tarefas de gerenciamento. As ferramentas de gerenciamento fornecidas com a solução permitem uma fácil configuração e administração.
Computer acœunt AD
Admin
Bud iration T ime
Su pp ortgtaff
Act Directory
O núcleo da solução é GPO Client Side Extension (CSE) que executa as seguintes tarefas durante a atualização do GPO:
- Verifica se a senha da conta de administrador local expirou ou não e então gera a nova senha quando a senha antiga expirou ou é necessária para ser alterada antes da expiração
- Altera a senha da conta do administrador
- Relata a senha para senha do Active Directory, armazenando-a em um atributo confidencial com uma conta de computador em AD
- Relata o próximo tempo de expiração para o Active Directory, armazenando-o em atributo confidencial com conta de computador em AD
- A senha pode ser lida a partir de AD pelos usuários que estão autorizados a fazê-lo
- A senha pode ser forçada a ser alterada por usuários elegÃveis
Cada computador membro de um domÃnio mantém uma conta de administrador local configurada (salvo controladores de domÃnio que não possuem conta local). Esta é a conta configurada quando é efetuado a implantação do Windows no computador pela primeira vez, ou é configurado automaticamente quando utilizado ferramentas de implantação de software, como o Configuration Manager, por exemplo. A conta de administrador local permite que o pessoal das operações de TI façam login no computador caso a conectividade não possa ser estabelecida no domÃnio.
O gerenciamento de senhas para a conta de Administrador local de cada computador ou estação de trabalho de uma organização pode ser uma árdua tarefa, principalmente considerando uma organização com cerca de 5000 estações de trabalho, significando que existem 5000 contas de Administrador local separadas para gerenciar. O que acaba acontecendo é que as organizações atribuem uma única senha de conta de administrador local comum a todas as contas de administrador locais.
A desvantagem desta abordagem é que as pessoas além da equipe de operações de TI geralmente descobrem esta senha e, em seguida, usam para ganhar acesso de Administrador local não autorizado a computadores em sua organização. Em algumas de minhas implementações com Windows Server 2012 e 2012 R2, foi utilizado uma GPO que alterava a senha de administrador local de 45 em 45 dias, dificultando a quebra, entretanto ainda assim existe a possibilidade de uma quebra dentro desse perÃodo. Caso a quebra da senha ocorra dentro desse perÃodo, o invasor ainda teria acesso a senha de Administrador de qualquer estação de trabalho. Abaixo temos um exemplo de onde fica localizado a senha da estação de trabalho ou servidor sob efeito do LAPS.
Soluções de senha de administrador local (LAPS) fornece à s organizações um repositório central para senhas de administrador local para máquinas de membros de domÃnio. Quando implantado, o LAPS fornece os seguintes recursos:
• As senhas do administrador local são exclusivas em cada computador gerenciado pelo LAPS.
• As senhas do administrador local são aleatorizadas e alteradas regularmente.
• LAPS armazena senhas e segredos de administrador local de forma segura dentro do AD DS.
• O acesso a senhas e segredos é controlado por permissões configuráveis.
• As senhas recuperadas pelo LAPS são transmitidas ao cliente de forma segura e criptografada.
O LAPS é suportado em todas as versões x86 ou x64 Windows Client e Windows Server, requerendo nÃvel funcional de domÃnio do Active Directory do Windows Server 2003 ou superior e funciona apenas com computadores que são membros de um domÃnio do Active Directory (ou seja, não funciona sem que as estações de trabalho estejam no AD).
O LAPS precisa ser instalado em um servidor e enviado às estações de trabalho através de uma agente em formato .MSI. Será necessário configurar o agente LAPS através de uma Extensão lateral do Cliente de Diretiva de Grupo. Você instala o cliente LAPS usando um arquivo MSI em computadores clientes que você gerenciará.
LAPS requer uma atualização para o esquema do Active Directory. Você executa esta atualização executando o cmdlet Update-AdmPwdADSchema, que está incluÃdo em um módulo PowerShell disponibilizado quando você instala LAPS em um computador. A pessoa que executa este cmdlet deve ser um membro do grupo Administradores de Esquema e este cmdlet deve ser executado em um computador que esteja no mesmo site do Active Directory que o computador que detém a função de mestre de esquema para a floresta. O LAPS requer que o .NET Framework 4.0 e o Windows PowerShell 2.0 ou posterior estejam instalados nos computadores para os quais gerenciará as senhas do administrador local.
O processo LAPS ocorre cada vez que as atualizações de polÃticas de grupo ocorrem. Quando é realizado uma atualização de polÃtica de grupo, ocorrem as seguintes ações:
1. LAPS determina se a senha da conta de administrador local expirou.
2. Se a senha não expirou, o LAPS não faz nada.
3. Se a senha expirou, o LAPS executa as seguintes etapas:
3.1. Muda a senha de administrador local para um novo valor aleatório com base nos parâmetros configurados para senhas de administrador locais.
3.2. Transmite a nova senha para o AD DS, onde é armazenado em um atributo confidencial especial associado à conta de computador do computador que atualizou sua senha da Conta de Administrador local.
3.3. Transmite a nova data de validade da senha para o AD DS, onde é armazenado em um atributo confidencial especial associado à conta de computador do computador que atualizou sua senha de conta de administrador local. A senha pode ser lida no AD DS por usuários autorizados. Também é possÃvel que o usuário autorizado desencadeie uma mudança de senha do administrador local em um computador especÃfico.
Existe uma série de etapas necessárias para se configurar e gerenciar senhas pelo LAPS. O primeiro conjunto de etapas envolve a configuração do AD DS. Deve-se selecionar uma determinada OU que possua os computadores para que receba a configuração de atribuição (Set-AdmPwdComputerSelfPermission). Esta configuração é aplicada diretamente a OU, atribuindo a capacidade de atualização de senhas das contas de administrador local quando houver sua expiração. Abaixo temos um exemplo do comando para tal atividade:
Exemplo: Set-AdmPwdComputerSelfPermission -Identity "RH"
Neste exemplo estou habilitando o recurso LAPS dentro da OU RH. Qualquer computador adicionado a esta Unidade Organizacional, receberá automáticamente as configurações.
Por padrão, as contas que são membros dos grupos Administradores de DomÃnio e Administradores da Empresa podem acessar e visualizar senhas armazenadas. Você usa o cmdlet Set-AdmPwdReadPasswordPermission para fornecer grupos adicionais com a capacidade de visualizar a senha do administrador local. Por exemplo, para atribuir ao grupo RH_ITOps a capacidade de visualizar a senha de administrador local em computadores na OU RH, use o seguinte comando:
Exemplo: Set-AdmPwdReadPasswordPermission -Identity "RH" -AllowedPrincipals "RH_ITOps"
O próximo passo é executar o instalador para instalar os modelos de GPO no AD DS. Depois de instalar os modelos, você pode configurar as seguintes polÃticas:
• Habilite o gerenciamento local de senha de administrador. Esta polÃtica permitirá LAPS e permitirá que você gerencie a senha da conta de administrador local de forma centralizada.
• Configurações de senha. Esta polÃtica permite que você configure a complexidade, o comprimento e a idade máxima da senha de administrador local. O padrão é que letras maiúsculas e minúsculas, números e caracteres especiais são usados. O comprimento da senha padrão é de 14 dias e a idade máxima da senha padrão é de 30 dias.
• Não permitir o tempo de expiração da senha mais longo do que o necessário. Quando ativada, a senha será atualizada de acordo com a polÃtica de expiração de senha do domÃnio.
• Nome da conta de administrador para gerenciar. Use esta polÃtica para identificar contas de administrador local personalizadas. Você pode visualizar senhas atribuÃdas a um computador usando um dos seguintes métodos:
• Visualize as propriedades da conta do computador com recursos avançados ativados nos usuários e computadores do Active Directory examinando o atributo ms-Mcs-AdmPwd.
• Use o aplicativo LAPS UI App.
• Use o cmdlet Get-AdmPwdPassword Windows PowerShell, disponÃvel através do módulo AdmPwd.PS, que está disponÃvel quando você instala LAPS.
Link para baixar
LAPS.x64.msi
LAPS.x86.msi
https://www.microsoft.com/en-us/download/details.aspx?id=46899
Este processo deve ser feito diretamente pelo controlador de domÃnio e envolve o preparo do Schema do AD apos a instalação do LAPS.x64.msi. Para executar tais comandos utilize o PowerShell com permissão elevada.
Import-Module admpwd.ps
Update-AdmPwdADSchema
Set-AdmPwdComputerSelfPermission -Identity “Sydney_Computers”
Os recursos da solução incluem:
- Segurança:
Senha aleatória que muda regularmente em máquinas gerenciadas
Mitigação efetiva do ataque Pass-the-hash
A senha está protegida durante o transporte via criptografia Kerberos
Senha está protegida em AD pela AD ACL, portanto, o modelo de segurança granular pode ser facilmente implementado
- Gerenciamento
Parâmetros de senha configuráveis: idade, complexidade e comprimento
Capacidade de forçar a reinicialização da senha em cada máquina
Modelo de segurança integrado com ACL AD
UI de uso final pode ser qualquer ferramenta de gerenciamento de AD de escolha, além de ferramentas personalizadas (PowerShell e Fat client) são fornecidas
Proteção contra exclusão de conta de computador
Fácil implementação e mÃnima pegada
- Extensibilidade:
A solução pode ser estendida para fornecer funcionalidades adicionais, tais como:
criptografia adicional de senha armazenada em AD
Histórico de senha
UI da Web
A solução tem os seguintes requisitos:
- Active Directory:
O Windows 2003 SP1 e acima
- Máquinas gerenciadas:
O Windows Vista com SP atual ou superior; X86 ou x64
O Windows 2003 com SP atual e acima; X86 ou x64 (Itanium não suportado)
- Ferramentas de gerenciamento:
O .NET Framework 4.0
O PowerShell 2.0 ou superior