KB5004605: Atualização adiciona proteções de encriptação AES ao protocolo MS-SAMR para CVE-2021-33757

Resumo

As atualizações do Windows de 13 de julho de 2021 e atualizações posteriores do Windows adicionam proteções para CVE-2021-33757.

Depois de instalar as atualizações do Windows de 13 de julho de 2021 ou atualizações posteriores do Windows, a encriptação AES (Advanced Encryption Standard) será o método preferencial em clientes Windows ao utilizar o protocolo MS-SAMR legado para operações de palavra-passe se a encriptação AES for suportada pelo servidor SAM. Se a encriptação AES não for suportada pelo servidor SAM, a alternativa para a encriptação RC4 legada será permitida.

As alterações no CVE-20201-33757 são específicas para o protocolo MS-SAMR e são independentes de outros protocolos de autenticação. MS-SAMR usa SMB sobre RPC e pipes nomeados. Apesar de o SMB também suportar encriptação, esta não está ativada por predefinição. Por padrão, as alterações no CVE-20201-33757 estão habilitadas e fornecem segurança adicional na camada SAM. Não são necessárias alterações de configuração adicionais além da instalação de proteções para CVE-20201-33757 incluídas nas atualizações do Windows de 13 de julho de 2021 ou atualizações do Windows posteriores em todas as versões suportadas do Windows. As versões do Windows não suportadas devem ser descontinuadas ou atualizadas para uma versão suportada.

Nota: O CVE-2021-33757 apenas modifica a forma como as palavras-passe são encriptadas em trânsito ao utilizar APIs específicas do protocolo MS-SAMR e, especificamente, NÃO modifica a forma como as palavras-passe são armazenadas em repouso. Para obter mais informações sobre como as senhas são criptografadas em repouso no Active Directory e localmente no banco de dados SAM (registro), consulte Visão geral de senhas.

Mais informações

Alterações feitas até às atualizações de 13 de julho de 2021
Como funciona o novo comportamento?

O método SamrConnect5 existente é normalmente usado para estabelecer uma conexão entre o cliente e o servidor SAM.

Um servidor atualizado agora retornará um novo bit na resposta SamrConnect5(), conforme definido no SAMPR_REVISION_INFO_V1.

Valor Significado
0x00000010 No recebimento pelo cliente, esse valor, quando definido, indica que o cliente deve usar a criptografia AES com a estrutura SAMPR_ENCRYPTED_PASSWORD_AES para criptografar os buffers de senha quando enviados pelo fio. Ver Utilização de Cifra AES (secção 3.2.2.4) e SAMPR_ENCRYPTED_PASSWORD_AES (secção 2.2.6.32).

Se o servidor atualizado suportar AES, o cliente usará novos métodos e novas classes de informações para operações de senha. Se o servidor não retornar esse sinalizador ou se o cliente não for atualizado, o cliente voltará a usar métodos anteriores com criptografia RC4.

Como é que o Controlador de Domínio Só de Leitura é afetado?

As operações de Conjunto de Palavras-passe requerem um controlador de domínio gravável (RWDC). As alterações de senha são encaminhadas pelo Controlador de Domínio Somente Leitura (RODC) para um RWDC. Todos os dispositivos devem ser atualizados para que o AES seja usado. Por exemplo:

  • Se o cliente, RODC ou RWDC não for atualizado, a criptografia RC4 será usada.
  • Se o cliente, RODC e RWDC forem atualizados, a criptografia AES será usada.
Registo de eventos

As atualizações de 13 de julho de 2021 adicionam quatro novos eventos ao registo do sistema para ajudar a identificar dispositivos que não estão atualizados e ajudar a melhorar a segurança.

  • Estado de configuração O ID de evento 16982 ou 16983 é registado no arranque ou durante uma alteração de configuração do registo.

    ID do Evento 16982

    Registo de eventos Sistema
    Origem do evento Directory-Services-SAM
    ID de Evento 16982
    Nível Informações
    Texto da mensagem do evento O gestor de contas de segurança está agora a registar eventos verbosos para clientes remotos que chamam a alteração de palavra-passe legada ou definem métodos RPC. Esta definição pode causar um grande número de mensagens e só deve ser utilizada durante um curto período de tempo para diagnosticar problemas.

    ID do Evento 16983

    Registo de eventos Sistema
    Origem do evento Directory-Services-SAM
    ID de Evento 16983
    Nível Informações
    Texto da mensagem do evento O gestor de contas de segurança está agora a registar eventos sumários periódicos para clientes remotos que chamam a palavra-passe legada, alteram ou definem métodos RPC.
  • Depois de aplicar a atualização de 13 de julho de 2021, é registado um Evento de Resumo 16984 no Registo de eventos de sistema a cada 60 minutos.

    ID do Evento 16984

    Registo de eventos Sistema
    Origem do evento Directory-Services-SAM
    ID de Evento 16984
    Nível Informações
    Texto da mensagem do evento O gestor de contas de segurança detectou a alteração da palavra-passe %x legada ou definiu chamadas do método RPC nos últimos 60 minutos.
  • Depois de configurar o registo de eventos verboso, o ID de Evento 16985 é registado no Registo de eventos do sistema sempre que um método RPC legado é utilizado para alterar ou definir uma palavra-passe de conta.

    ID do Evento 16985

    Registo de eventos Sistema
    Origem do evento Directory-Services-SAM
    ID de Evento 16985
    Nível Informações
    Texto da mensagem do evento O gestor de contas de segurança detetou a utilização de uma alteração ou um método RPC definido como legado a partir de um cliente de rede. Considere atualizar o sistema operacional cliente ou aplicativo para usar a versão mais recente e mais segura desse método.
    Detalhes:
    Método RPC: %1
    Endereço de rede do cliente: %2
    SID do cliente: %3
    Nome de usuário: %4

    Para registar o ID de Evento verboso 16985, alterne o seguinte valor de registo no servidor ou controlador de domínio.

    Caminho HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SAM
    Tipo REG_DWORD
    Nome do valor AuditLegacyPasswordRpcMethods
    Dados de valor 1 = o registo verboso está ativado
    0 ou not present = o registo verboso está desativado. Apenas eventos de resumo. (Predefinição)
Configurar iterações PBKDF2 para alteração de senha

Conforme descrito em SamrUnicodeChangePasswordUser4 (Opnum 73), quando você usa o novo método SamrUnicodeChangePasswordUser4 , o cliente e o servidor usarão o algoritmo PBKDF2 para derivar uma chave de criptografia e descriptografia da senha antiga de texto sem formatação. Isso ocorre porque a senha antiga é o único segredo comum conhecido tanto pelo servidor quanto pelo cliente.

Para obter mais informações sobre PBKDF2, consulte Função BCryptDeriveKeyPBKDF2 (bcrypt.h).

Se você precisar fazer uma alteração por motivos de desempenho e segurança, poderá ajustar o número de iterações PBKDF2 usadas pelo cliente para alteração de senha definindo o seguinte valor do Registro no cliente.

Nota

Diminuir o número de iterações PBKDF2 diminuirá a segurança.  Não recomendamos que o número seja diminuído em relação à predefinição. No entanto, recomendamos que você use o maior número possível de iterações PBKDF2.

Caminho HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SAM
Tipo REG_DWORD
Nome do valor PBKDF2Iterations
Dados de valor Mínimo de 5.000 a máximo de 1.000.000
Valor predefinido 10.000

Nota

PBKDF2 não é usado para operações de conjunto de senhas. Para operações de conjunto de palavras-passe, a chave de sessão SMB é o segredo partilhado entre o cliente e o servidor e é utilizada como base para derivar chaves de encriptação.

Para obter mais informações, consulte Adquirindo uma chave de sessão SMB.

Perguntas Frequentes (FAQ)

Quais cenários desencadeiam downgrades de AES para RC4?

O downgrade acontece quando o servidor ou cliente não suporta AES.

Como posso saber se a encriptação RC4 ou a encriptação AES foi negociada?

Os servidores actualizados registarão eventos quando forem utilizados métodos legados com RC4.

Posso exigir encriptação AES no servidor e as futuras atualizações do Windows serão impostas através de programação utilizando AES?

Atualmente, não existe nenhuma modalidade de aplicação de medidas disponível, mas poderá existir no futuro. Não temos uma data.

Os clientes de terceiros suportam proteções para CVE-2021-33757 para negociar AES quando suportado pelo servidor? Devo contactar Suporte da Microsoft ou a equipa de suporte de terceiros para responder a esta questão?

Se um dispositivo de terceiros não estiver usando o protocolo SAMR, isso não é importante. Fornecedores de terceiros que implementam o protocolo MS-SAMR podem optar por implementar isso. Se tiver dúvidas, contacte o fornecedor externo.

Alguma alteração adicional de configuração deve ser feita?

Não são necessárias alterações adicionais.

Para que serve este protocolo?

Este protocolo é legado e prevemos que a sua utilização seja muito baixa. Aplicativos legados podem usar essas APIs. Além disso, algumas ferramentas do Active Directory, como o MMC Usuários e Computadores do AD, usam SAMR.

As alterações de senha que usam o protocolo Kerberos ou outros protocolos são afetadas?

Não. Apenas as alterações de senha que usam essas APIs SAMR específicas são afetadas.

O desempenho do Controlador de Domínio pode ser afetado?

Sim. PBKDF2 é mais caro que RC4. Se existirem muitas alterações de palavra-passe a ocorrer ao mesmo tempo no controlador de domínio que chama a API SamrUnicodeChangePasswordUser4 , a carga da CPU do LSASS poderá ser afetada. Você pode ajustar as iterações PBKDF2 nos clientes se for necessário, no entanto, não recomendamos diminuir a partir do padrão, pois isso diminuiria a segurança.

Referências

Criptografia autenticada com AES-CBC e HMAC-SHA

Utilização de Cifra AES

Informações sobre a exclusão de responsabilidade de terceiros

Fornecemos informações de contacto de terceiros para o ajudar a obter suporte técnico. Estas informações de contacto poderão ser alteradas sem aviso prévio. Não garantimos a exatidão destas informações de contacto de terceiros.