Atualizado a 20/03/2024 – Referências LDS adicionadas
Resumo
O CVE-2021-42291 resolve uma vulnerabilidade de desativação de segurança que permite a determinados utilizadores definir valores arbitrários em atributos sensíveis à segurança de objetos específicos armazenados no Active Directory (AD) ou no Lightweight Directory Service (LDS). Para explorar esta vulnerabilidade, um utilizador tem de ter privilégios suficientes para criar um objeto derivado do computador, tal como um utilizador concedeu permissões CreateChild para objetos de computador. Esse utilizador pode criar uma conta de computador com uma chamada LDAP (Lightweight Directory Access Protocol) que permite o acesso excessivamente permissivo ao atributo securityDescriptor . Além disso, os criadores e proprietários podem modificar atributos sensíveis à segurança após a criação de uma conta. Isto pode ser aproveitado para efetuar uma elevação de privilégios em determinados cenários.
NotaO LDS registará os eventos 3050, 3053, 3051 e 3054 sobre o estado do acesso implícito aos objetos, tal como o AD.
As mitigações no CVE-2021-42291 consistem em:
-
Verificação de autorização adicional quando os utilizadores sem direitos de administrador de domínio ou LDS tentam uma operação LDAP Add para um objeto derivado do computador. Isto inclui um modo Auditoria Por Predefinição que audita quando tais tentativas ocorrem sem interferir com o pedido e um modo de Imposição que bloqueia tais tentativas.
-
Remoção temporária dos privilégios de Proprietário Implícito quando os utilizadores sem direitos de administrador de domínio tentam uma operação LDAP Modify no atributo securityDescriptor . Ocorre uma verificação para confirmar se o utilizador teria permissão para escrever o descritor de segurança sem privilégios de Proprietário Implícito. Isto também inclui um modo auditar por predefinição que audita quando tais tentativas ocorrem sem interferir com o pedido e um modo de Imposição que bloqueia tais tentativas.
Tomar Medidas
Para proteger o seu ambiente e evitar interrupções, conclua os seguintes passos:
-
Atualize todos os dispositivos que alojam o controlador de domínio do Active Directory ou a função de Servidor LDS ao instalar as atualizações mais recentes do Windows. Os DCs que tenham as atualizações de 9 de novembro de 2021 ou posterior terão as alterações no Modo de auditoria por predefinição.
-
Monitorize o registo de eventos do Serviço de Diretório ou LDS para eventos 3044-3056 em controladores de domínio e servidores LDS que tenham as atualizações do Windows de 9 de novembro de 2021 ou posteriores. Os eventos registados indicam que um utilizador pode ter privilégios excessivos para criar contas de computador com atributos arbitrários sensíveis à segurança. Comunique quaisquer cenários inesperados à Microsoft através de um caso de Suporte Premier ou Unificado ou do Hub de Comentários. (Pode encontrar um exemplo destes eventos na secção Eventos Adicionados Recentemente.)
-
Se o Modo de auditoria não detetar privilégios inesperados durante um período de tempo suficiente, mude para o Modo de imposição para garantir que não ocorrem resultados negativos. Comunique quaisquer cenários inesperados à Microsoft através de um caso de Suporte Premier ou Unificado ou do Hub de Comentários.
Temporização das atualizações do Windows
Estas atualizações do Windows serão lançadas em duas fases:
-
Implementação inicial – introdução da atualização, incluindo auditar por predefinição, modos de Imposição ou Desativar configuráveis com o atributo dSHeuristics .
-
Implementação final – Imposição Por Predefinição.
9 de novembro de 2021: Fase de implementação inicial
A fase de implementação inicial começa com a atualização do Windows lançada a 9 de novembro de 2021. Esta versão adiciona a auditoria de permissões definidas por utilizadores sem direitos de administrador de domínio durante a criação ou modificação de um computador ou objetos derivados do computador. Também adiciona um modo Desativar e imposição. Pode definir o modo globalmente para cada floresta do Active Directory com o atributo dSHeuristics .
(Atualizado a 15/12/2023) Fase final de implementação
A fase final de implementação pode começar depois de concluir os passos listados na secção Tomar Medidas. Para ir para o Modo de Imposição, siga as instruções na secção Orientação de Implementação para definir os bits 28 e 29 no atributo dSHeuristics . Em seguida, monitorize os eventos 3044-3046. Comunicam quando o Modo de Imposição bloqueou uma operação LDAP Adicionar ou Modificar que poderia ter sido permitida anteriormente no modo de Auditoria.
Orientações de implementação
Definir Informações de Configuração
Depois de instalar o CVE-2021-42291, os carateres 28 e 29 do atributo dSHeuristics controlam o comportamento da atualização. O atributo dSHeuristics existe em cada floresta do Active Directory e contém definições para toda a floresta. O atributo dSHeuristics é um atributo do objeto "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,<Domain>" (AD) ou "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration, <conjunto de configuração>" (LDS). Consulte o atributo 6.1.1.2.4.1.2 dSHeuristics e DS-Heuristics para obter mais informações.
Caráter 28 – Verificações adicionais de AuthZ para operações LDAP Add
0: o modo Auditar por Predefinição está ativado. Um evento é registado quando os utilizadores sem direitos de administrador de domínio definem o securityDescriptor ou outros atributos para valores que podem conceder permissões excessivas, potencialmente permitindo a exploração futura, em novos objetos do AD derivados do computador.
1: O modo de imposição está ativado. Isto impede que os utilizadores sem direitos de administrador de domínio definam o securityDescriptor ou outros atributos para valores que possam conceder permissões excessivas em objetos do AD derivados do computador. Um evento também é registado quando isto ocorre.
2: desativa a auditoria atualizada e não impõe a segurança adicional. Não recomendado.
Exemplo: Se não tiver outras definições de dSHeuristics ativadas na floresta e quiser mudar para o Modo de imposição para verificação adicional de AuthZ, o atributo dSHeuristics deve ser definido como:
"0000000001000000000200000001"
Os carateres definidos neste caso são: 10th char : Tem de ser definido como 1 se o atributo dSHeuristics for, pelo menos, 10 carateres 20th char: tem de ser definido como 2 se o atributo dSHeuristics for, pelo menos, 20 carateres 28th char: Tem de ser definido como 1 para ativar o Modo de imposição para verificação adicional de AuthZCaráter 29 – Remoção temporária do Proprietário Implícito para operações de Modificação LDAP
0: o modo Auditar por Predefinição está ativado. Um evento é registado quando os utilizadores sem direitos de administrador de domínio definem securityDescriptor para valores que podem conceder permissões excessivas, potencialmente permitindo a exploração futura, em objetos do AD derivados de computador existentes.
1: O modo de imposição está ativado. Isto impede que os utilizadores sem direitos de administrador de domínio definam o securityDescriptor para valores que podem conceder permissões excessivas em objetos do AD derivados de computador existentes. Um evento também é registado quando isto ocorre.
2: desativa a auditoria atualizada e não impõe a segurança adicional. Não recomendado.
Exemplo: Se tiver apenas o sinalizador dsHeuristics de verificações adicionais de AuthZ definido na floresta e quiser mudar para o Modo de imposição para remoção temporária da Propriedade Implícita, o atributo dSHeuristics deve ser definido como:
"00000000010000000002000000011"
Os carateres definidos neste caso são: 10º caráter: tem de ser definido como 1 se o atributo dSHeuristics for, pelo menos, 10 carateres 20th char: tem de ser definido como 2 se o atributo dSHeuristics for, pelo menos, 20 carateres 28th char: Tem de ser definido como 1 para ativar o Modo de imposição para verificação adicional de AuthZ 29th char: Tem de ser definido como 1 para ativar o Modo de imposição para remoção temporária da Propriedade ImplícitaEventos adicionados recentemente
A atualização do Windows de 9 de novembro de 2021 também adicionará novos registos de eventos.
Eventos de Alteração do Modo – Verificação adicional de AuthZ para operações LDAP Add
Eventos que ocorrem quando o bit 28 do atributo dSHeuristics é alterado, o que altera o modo das verificações adicionais de AuthZ para a parte de operações LDAP Add da atualização.
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Informativo |
ID de Evento |
3050 |
Texto do Evento |
O diretório foi configurado para impor a autorização por atributo durante as operações de adição de LDAP. Esta é a definição mais segura e não é necessária mais nenhuma ação. |
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Aviso |
ID de Evento |
3051 |
Texto do Evento |
O diretório foi configurado para não impor a autorização por atributo durante as operações de adição de LDAP. Os eventos de aviso serão registados, mas nenhum pedido será bloqueado. Esta definição não é segura e deve ser utilizada apenas como um passo de resolução de problemas temporário. Reveja as mitigações sugeridas na ligação abaixo. |
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Erro |
ID de Evento |
3052 |
Texto do Evento |
O diretório foi configurado para não impor a autorização por atributo durante as operações de adição de LDAP. Não serão registados eventos e nenhum pedido será bloqueado. Esta definição não é segura e deve ser utilizada apenas como um passo de resolução de problemas temporário. Reveja as mitigações sugeridas na ligação abaixo. |
Eventos de Alteração do Modo – remoção temporária dos direitos de Proprietário Implícito
Eventos que ocorrem quando o bit 29 do atributo dSHeuristics é alterado, o que altera o modo de remoção temporária da parte dos direitos de Proprietário Implícito da atualização.
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Informativo |
ID de Evento |
3053 |
Texto do Evento |
O diretório foi configurado para bloquear privilégios implícitos de proprietário ao definir ou modificar inicialmente o atributo nTSecurityDescriptor durante as operações de adição e modificação do LDAP. Esta é a definição mais segura e não é necessária mais nenhuma ação. |
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Aviso |
ID de Evento |
3054 |
Texto do Evento |
O diretório foi configurado para permitir privilégios implícitos de proprietário ao definir ou modificar inicialmente o atributo nTSecurityDescriptor durante as operações de adição e modificação do LDAP. Os eventos de aviso serão registados, mas nenhum pedido será bloqueado. Esta definição não é segura e deve ser utilizada apenas como um passo de resolução de problemas temporário. |
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Erro |
ID de Evento |
3055 |
Texto do Evento |
O diretório foi configurado para permitir privilégios implícitos de proprietário ao definir ou modificar inicialmente o atributo nTSecurityDescriptor durante as operações de adição e modificação do LDAP. Não serão registados eventos e nenhum pedido será bloqueado. Esta definição não é segura e deve ser utilizada apenas como um passo de resolução de problemas temporário. |
Eventos do modo de auditoria
Eventos que ocorrem no Modo de auditoria para registar potenciais preocupações de segurança com uma operação LDAP Adicionar ou Modificar.
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Aviso |
ID de Evento |
3047 |
Texto do Evento |
O serviço de diretório detetou um pedido de adição LDAP para o seguinte objeto que normalmente teria sido bloqueado pelos seguintes motivos de segurança. O cliente não tinha permissão para escrever um ou mais atributos incluídos no pedido de adição, com base no descritor de segurança intercalado predefinido. O pedido foi autorizado a prosseguir porque o diretório está atualmente configurado para estar no modo apenas de auditoria para esta verificação de segurança. DN de objeto: <> de DN do objeto criado Classe de objeto: <objeto criado objectClass> Utilizador: <utilizador que tentou adicionar o LDAP> Endereço IP do Cliente: <o IP do requerente> Desc de segurança: <o SD que foi tentado> |
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Aviso |
ID de Evento |
3048 |
Texto do Evento |
O serviço de diretório detetou um pedido de adição LDAP para o seguinte objeto que normalmente teria sido bloqueado pelos seguintes motivos de segurança. O cliente incluía um atributo nTSecurityDescriptor no pedido de adição, mas não tinha permissão explícita para escrever uma ou mais partes do novo descritor de segurança, com base no descritor de segurança intercalado predefinido. O pedido foi autorizado a prosseguir porque o diretório está atualmente configurado para estar no modo apenas de auditoria para esta verificação de segurança. DN de objeto: <> de DN do objeto criado Classe de objeto: <objeto criado objectClass> Utilizador: <utilizador que tentou adicionar o LDAP> Endereço IP do Cliente: <o IP do requerente> |
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Aviso |
ID de Evento |
3049 |
Texto do Evento |
O serviço de diretório detetou um pedido de modificação LDAP para o seguinte objeto que normalmente teria sido bloqueado pelos seguintes motivos de segurança. O cliente incluía um atributo nTSecurityDescriptor no pedido de adição, mas não tinha permissão explícita para escrever uma ou mais partes do novo descritor de segurança, com base no descritor de segurança intercalado predefinido. O pedido foi autorizado a prosseguir porque o diretório está atualmente configurado para estar no modo apenas de auditoria para esta verificação de segurança. DN de objeto: <> de DN do objeto criado Classe de objeto: <objeto criado objectClass> Utilizador: <utilizador que tentou adicionar o LDAP> Endereço IP do Cliente: <o IP do requerente> |
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Aviso |
ID de Evento |
3056 |
Texto do Evento |
O serviço de diretório processou uma consulta para o atributo sdRightsEffective no objeto especificado abaixo. A máscara de acesso devolvida incluía WRITE_DAC, mas apenas porque o diretório foi configurado para permitir privilégios implícitos de proprietário, o que não é uma definição segura. DN de objeto: <> de DN do objeto criado Utilizador: <utilizador que tentou adicionar o LDAP> Endereço IP do Cliente: <o IP do requerente> |
Modo de Imposição - LDAP Adicionar falhas
Eventos que ocorrem quando uma operação LDAP Add é negada.
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Aviso |
ID de Evento |
3044 |
Texto do Evento |
O serviço de diretório negou um pedido de adição LDAP para o seguinte objeto. O pedido foi negado porque o cliente não tinha permissão para escrever um ou mais atributos incluídos no pedido de adição, com base no descritor de segurança intercalado predefinido. DN de objeto: <> de DN do objeto criado Classe de objeto: <objeto criado objectClass> Utilizador: <utilizador que tentou adicionar o LDAP> Endereço IP do Cliente: <o IP do requerente> Desc de segurança: <o SD que foi tentado> |
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Aviso |
ID de Evento |
3045 |
Texto do Evento |
O serviço de diretório negou um pedido de adição LDAP para o seguinte objeto. O pedido foi negado porque o cliente incluía um atributo nTSecurityDescriptor no pedido de adição, mas não tinha permissão explícita para escrever uma ou mais partes do novo descritor de segurança, com base no descritor de segurança intercalado predefinido. DN de objeto: <> de DN do objeto criado Classe de objeto: <objeto criado objectClass> Utilizador: <utilizador que tentou adicionar o LDAP> Endereço IP do Cliente: <o IP do requerente> |
Modo de Imposição – Falhas de Modificação LDAP
Eventos que ocorrem quando uma operação LDAP Modify é negada.
Registo de Eventos |
Serviços de Diretório |
Tipo de Evento |
Aviso |
ID de Evento |
3046 |
Texto do Evento |
O serviço de diretório negou um pedido de modificação LDAP para o seguinte objeto. O pedido foi negado porque o cliente incluía um atributo nTSecurityDescriptor no pedido de modificação, mas não tinha permissão explícita para escrever uma ou mais partes do novo descritor de segurança, com base no descritor de segurança existente do objeto. DN de objeto: <> de DN do objeto criado Classe de objeto: <objeto criado objectClass> Utilizador: <utilizador que tentou adicionar o LDAP> Endereço IP do Cliente: <o IP do requerente> |
Perguntas mais frequentes
T1 O que acontece se tiver uma mistura de controladores de domínio do Active Directory que são atualizados e não atualizados?
A1 Os DCs que não são atualizados não registarão eventos relacionados com esta vulnerabilidade.
Q2 O que preciso de fazer para Read-Only Controladores de Domínio (RODCs)?
A2 Nada; As operações LDAP Adicionar e Modificar não podem visar RODCs.
T3 Tenho um produto ou processo de terceiros que falha após ativar o Modo de imposição. Preciso de conceder direitos de administrador de domínio do serviço ou do utilizador?
A3 Geralmente, não recomendamos adicionar um serviço ou utilizador ao grupo Administradores de Domínio como a primeira solução para este problema. Examine os registos de eventos para ver que permissão específica é necessária e considere delegar direitos devidamente limitados para esse utilizador numa Unidade Organizacional separada designada para esse fim.
Q4 Vejo os eventos de auditoria também para servidores LDS. Por que motivo está isto a acontecer?
A4Todas as opções acima também se aplicam ao AD LDS, embora seja muito invulgar ter objetos de computador no LDS. Os passos de mitigação também devem ser seguidos para ativar a proteção do AD LDS quando o Modo de auditoria não deteta privilégios inesperados.