Andrea Pierini Consultor de segurança sénior

Enquanto escrevia uma publicação no blogue sobre NTLMv1 e Windows Server 2025, lembrei-me de um problema antigo, bem conhecido, mas persistentemente mal compreendido: níveis de autenticação LAN Manager definidos incorretamente. Esta configuração de autenticação especifica o protocolo de desafio e resposta usado para inícios de sessão na rede quando o Kerberos não é negociado.


Por que razão utilizar o nível de autenticação 2 (ou inferior) é uma má ideia

Uma das configurações incorretas mais comuns que encontro em ambientes do Active Directory é o nível de autenticação do LAN Manager definido como 2 ou inferior nos controladores de domínio (DCs). Esta autenticação pode ser definida de duas formas:

  • Através da Política de Grupo: Network security: LAN Manager authentication level
  • Diretamente através da chave do registo: HKLM\System\CurrentControlSet\Control\Lsa\LmCompatibilityLevel

O motivo para definir a autenticação como 2 é quase sempre o mesmo: «Temos aplicações antigas que utilizam a autenticação NTLMv1 e não podemos correr o risco de as danificar.»

Essa lógica é compreensível. Mas leva a um erro subtil e crítico.


Qual é a diferença entre os níveis de autenticação 2 e 3 do LAN Manager?

A configuração do nível de autenticação do LAN Manager controla o comportamento de autenticação de entrada e saída— e esses não são a mesma coisa.

Definir o nível para 2 significa que:

  • O DC aceita autenticação NTLMv1 recebida.
  • O DC também usa NTLMv1 para iniciar ligações de saída.

Esse segundo ponto cria uma vulnerabilidade.

Em contrapartida, definir o nível para 3 significa que:

  • O DC ainda aceita NTLMv1 de entrada (para que os clientes antigos continuem a funcionar).
  • O DC é impedido de enviar ligações de saída NTLMv1.

Em outras palavras, usar o nível 3 preserva a compatibilidade e elimina uma superfície de ataque significativa.


Por que o NTLMv1 de saída de um DC é perigoso

Os DCs são alvos de alto valor. Se um invasor conseguir coagir um DC a fazer uma tentativa de autenticação de saída (através de técnicas como PrinterBug, DFSCoerce, PetitPotam ou métodos de coação semelhantes) e se essa autenticação usar NTLMv1, a resposta capturada será significativamente mais fraca do que uma que use NTLMv2.

As respostas NTLMv1 podem frequentemente ser decifradas rapidamente utilizando hardware moderno ou tabelas pré-calculadas. Como resultado, um invasor pode obter o hash NT da palavra-passe da conta do computador.

Mas não é só isso...e é aqui que a diferença se torna realmente crítica.

Os invasores nem precisam do hash NT.

Em vez disso, eles podem retransmitir a autenticação NTLMv1 forçada diretamente para outro DC no qual a ligação do canal LDAPS não é imposta (outra configuração incorreta alarmantemente comum). Ao retransmitir a autenticação da conta da máquina do DC por LDAP, o invasor
pode realizar um dos dois ataques devastadores:

Ambos os caminhos levam ao mesmo resultado: controlo total sobre o DC. Desde a coerção inicial até ao comprometimento total do domínio, pode levar menos de um minuto.

Não é necessário quebrar o hash. Não são necessários privilégios elevados para iniciar. Basta um DC compatível com NTLMv1 e a falta de imposição de ligação do canal LDAP.


A lição prática

Se o motivo pelo qual mantém a autenticação do LAN Manager no nível 2 (ou inferior) for a compatibilidade com aplicações antigas, pode passar para o nível 3 já hoje, sem afetar o funcionamento dessas aplicações.

Pode ser interessante reservar os níveis 4 e 5 para quando estiver pronto para descontinuar totalmente o LM e o NTLMv1 no seu ambiente, pois esses níveis começam a recusar a autenticação NTLMv1 de entrada. (Observação: no Windows Server 2025, as ligações de saída que utilizam LM e NTLMv1 não são mais permitidas.)

Tenha em mente esta progressão:

  • Nível 2: O DC aceita autenticação LM e NTLMv1 de entrada e envia NTLMv1 de saída. As aplicações antigas funcionam, mas os DCs ficam expostos.
  • Nível 3: O DC aceita autenticação LM e NTLMv1 de entrada, mas não envia NTLMv1 de saída. As aplicações antigas continuam a funcionar e os seus DCs estão protegidos.
  • Nível 4: O DC envia NTLMv2 para fora, recusa LM recebido, mas ainda aceita NTLMv1 recebido. É compatível com a maioria das aplicações e protege os seus DCs.
  • Nível 5: O DC recusa totalmente todas as autenticações LM e NTLMv1 de entrada e saída. Este nível oferece proteção total, mas os aplicativos legados deixam de funcionar.

Se estiver a gerir servidores de domínio (DCs) num ambiente com requisitos de autenticação legados, o Nível 3 deve ser o seu padrão mínimo. Definir o nível de autenticação do LAN Manager para o nível 3 é uma alteração de baixo risco e grande benefício que é frequentemente ignorada devido a equívocos profundamente enraizados sobre a compatibilidade.