Autenticação em nível de rede

Recentemente há uma grande atenção dada ao Remote Desktop Protocol (RDP) devido a ataques. Em 2011, o protocolo permitiu a infecção de outros computadores devido a ataques de força bruta nas senhas do RDP. O Ransomware, identificado pela Kaspersky como Trojan-Ransom.Win32.Agent.hxf, compacta os arquivos com o WinRAR, usando criptografia AES. Infelizmente não é possível recuperar os arquivos criptografados por essa versão da praga.

Em 2012, foi encontrado uma vulnerabilidade no protocolo, permitindo a execução de código remota quando uma sequência específica de pacotes RDP são enviados para o servidor afetado.

No Windows Server 2003, ao iniciar uma sessão remota, o Cliente da Área de trabalho remota (mstsc) redireciona para a tela de logon do servidor:

rdp

Conexão da área de trabalho no Server 2003

Iniciar uma sessão — até mesmo apresentar uma tela de logon — requer que o servidor crie muitos dos processos necessários para oferecer suporte a uma sessão, tais como o csrss.exe e winlogon.exe. Por causa disto, a criação de uma sessão é relativamente demorada e cara, além de expor o servidor a exploits e ataques de negação de serviço (DoS) – se um número grande de usuários não autorizados se conectarem ao servidor ao mesmo tempo com credenciais de login falsas, elas podem causar um ataque de negação de serviço (DoS), impedindo o acesso de usuários legítimos ao servidor (GRIFFIN, 2012).

Com o lançamento do Windows Vista e Windows Server 2008, a Microsoft introduziu a Autenticação em nível de rede (NLA). Ao realizar uma conexão remota a um servidor com Windows Server 2008 com NLA habilitado, o Cliente da Área de trabalho exibe uma caixa de diálogo local para levar suas credenciais ANTES de conectar-se ao servidor. Esta caixa de diálogo é o front-end do CredSSP. (PEREZ, 2012)

rdp-xp-nla

Conexão da área de trabalho com NLA

O CredSSP estabelece um canal encriptado entre o cliente e o servidor de destino usando TLS para validação de identidade. O protocolo CredSSP utiliza as extensões de protocolo SPNEGO para negociar um mecanismo GSS (NTLM, Kerberos ou Autenticação PKI para cartões inteligentes) que criptografa as credenciais enviadas ao servidor de destino e realiza a autenticação mútua, garantindo a confidencialidade devido ao uso de um canal TLS seguro para envio de credenciais ao servidor de destino. (PEREZ, 2012) Uma das vantagens que o CredSSP oferece é a redução do número de logons que um usuário precisa fazer ao adicionar suporte a SSO (Single Sign-On) a Sessões da área de trabalho remota. (GRIFFIN, 2012)

Como nenhum pacote chega ao serviço RDP até a negociação da conexão via CredSSP, o NLA protege os servidores de ataques de negação de serviço (DoS) e exploits.

O NLA foi introduzido inicialmente com o RDP 6.0 no Windows Vista e posteriormente no XP SP3.

Configurando a Autenticação em nível de rede no RDP

Para habilitar o NLA via Diretiva de grupo, habilite a seguinte diretiva na OU do Servidor de Terminal: Configuração do computador/Políticas/Modelos administrativos/Componentes do Windows/Serviços de área de trabalho remota/Host de sessão de área de trabalho remota/Segurança/Exigir autenticação de usuário para conexões remotas usando autenticação no nível da rede

windows-live-writer-configuring-y_948b

E agora nós temos uma GPO que pode ser vinculada a qualquer Domínio ou Unidade Organizacional da floresta. Após aplicada, quando uma conexão é realizada nós podemos verificar o mecanismo de segurança em uso clicando com botão direito no topo da Sessão da área de trabalho remota no Windows para exibir o modo como nossa identidade foi autenticada:

windows-live-writer-configuring-y_948b

Nos servidores que possuem a política a única opção disponível é o uso de NLA:

windows-live-writer-configuring-y_948b

Windows XP e NLA

O Windows XP SP3 oferece suporte CredSSP, mas ele não está habilitado por padrão. É necessário instalar o Internet Explorer 8, uma atualização para o RDP e aplicar um Fix It (KB951608) para habilitar o CredSSP. Infelizmente, o Fix It não está mais disponível no site da Microsoft, mas consegui encontrá-lo na internet e realizei o upload do mesmo para minha conta no MediaFire:

  1. Internet Explorer 8 para Windows XP
  2. Atualização do Cliente de Conexão de Área de trabalho remota (RDP 7.0) para Windows XP (PT-BR) (KB969084)
  3. Microsoft Fix It 50588 (KB951608)

Após a instalação da atualização e do Fix It, é necessário reiniciar o computador para aplicar as alterações.

Referências

GRIFF, Kristin. Windows Server 2008 R2: Por que usar a autenticação no nível da rede? Microsoft TechNet. 2012.

PEREZ, Carlos. Configuring Network Level Authentication for RDP. Dark Operator. 2012.

SpiceWorks. 2013. Enable Network Level Authentication (NLA) in Windows XP.

Anúncios