Como os invasores exploram o protocolo de área de trabalho remota
O Remote Desktop Protocol (RDP) é um dos protocolos de comunicação mais populares para sistemas de controle remoto.
O RDP vem com todos os sistemas operacionais Windows atuais e sua interface gráfica do usuário o torna uma ferramenta de acesso remoto fácil de usar. Além disso, a Microsoft o posiciona como o método padrão para gerenciar Máquinas virtuais do Azure executando o Windows. Não demorou muito para que os atacantes percebessem que se tratava de um ovo de ouro. Em vez de tentar abusar de uma vulnerabilidade sem sucesso garantido, eles perceberam que é muito mais eficiente usar as ferramentas de acesso remoto disponíveis. Eles só precisam obter as credenciais corretas para obter acesso. Por acaso, de acordo com um recente Relatório X-Force, credenciais roubadas para acessar esses sistemas são parte de um mercado lucrativo na dark web. Esses servidores diretamente expostos não são os únicos sistemas em que os invasores usam (ou melhor, abusam) RDP. Um de seus objetivos é se misturar ao tráfego regular. Como o RDP é um protocolo tão popular, os invasores o usam para mover para outros sistemas assim que obtêm acesso.
O que é RDP e quem o usa?
Antes de pularmos para os riscos e defesas do RDP, é bom saber como ele funciona. O protocolo RDP é uma via de mão dupla e pode:
- Transferir a saída da tela do servidor para o cliente
- Transferir a entrada do teclado e do mouse do cliente para o servidor.
Este processo é assimétrico. Enquanto a maioria dos dados vem do servidor para o cliente, o cliente transfere poucos dados de volta. O cliente e o servidor precisam passar por várias fases antes de configurar a comunicação. Depois que um cliente inicia a conexão, ele concorda com as configurações de uso do servidor (por exemplo, resolução da tela), recursos suportados e informações de licença. Eles então concordam com o tipo de segurança RDP, escolhendo entre dois modos suportados:
- Padrão, baseado em RC4
- Aprimorado, em que o RDP depende de outros protocolos, como TLS ou CredSSP.
Finalmente, eles têm que concordar com o número de canais necessários. Os canais são fluxos de dados individuais, cada um com seu próprio ID, que constituem o protocolo de desktop remoto. Esses canais podem redirecionar o acesso ao sistema de arquivos ou permitir o compartilhamento da área de transferência entre o cliente e o servidor.
Vulnerabilidades no RDP: BlueKeep
Pesquisadores em 2019 encontraram uma vulnerabilidade crucial, apelidada de BlueKeep, nesse conceito de canais. Explorar a vulnerabilidade (CVE-2019-0708) leva à execução remota de código aleatório, sem que nenhum usuário faça nada. Além disso, não exigia credenciais válidas. Esses fatos combinados podem ter levado a um worm, malware que pode se propagar entre sistemas vulneráveis. Testemunhamos algo assim anteriormente com o malware WannaCry.
Para explorar a vulnerabilidade, o cliente precisava solicitar um nome de canal específico, MS_T120, e então vinculá-lo a um ID de canal diferente de 31.
O que é notável sobre o BlueKeep é que ele se conecta a sistemas Windows mais antigos. Isso forçou a Microsoft a dar o passo estranho de fazer novos patches para sistemas que não eram mais compatíveis.
Outras vulnerabilidades de atração
Em agosto de 2019, os pesquisadores anunciaram o DejaBlue . DejaBlue não é uma vulnerabilidade, mas uma lista de falhas que, semelhante ao BlueKeep, permite que invasores sequestrem sistemas vulneráveis sem qualquer forma de autenticação. Ao contrário do BlueKeep, as vulnerabilidades do DejaBlue foram localizadas em versões mais recentes do Windows.
Às vezes, os invasores não precisam abusar das vulnerabilidades. Eles podem simplesmente abusar de configurações incorretas. Algumas das armadilhas comuns com a segurança RDP incluem:
- Fracas credenciais de login do usuário
- Servidores onde você não está registrando ou monitorando logins RDP. Esses sistemas permitem que os invasores tentem ataques de força bruta ou espalhamento de senha à vontade.
- Sistemas expostos publicamente sem qualquer filtragem de rede.
Grupos APT usando RDP
Também podemos examinar o MITRE ATT & CK para entender o interesse dos invasores no RDP e como ele é usado em suas operações.
- Grupos como APT41, FIN6 e FIN7 usam RDP para mover lateralmente
- Grupos como o FLIPSIDE usam RDP para extrair informações. Ngrok , por exemplo, é um proxy reverso legítimo que pode encapsular o tráfego no RDP para exfiltrar os dados da vítima.
- O malware WannaCry pode executar malware em sessões de desktop remoto existentes. Esse ‘roubo‘ de uma sessão é comumente conhecido como sequestro de RDP.
Contramedidas
Apesar desses riscos e do interesse dos invasores, o RDP ainda tem muito valor a oferecer. Existem vários elementos-chave a serem considerados para proteger os servidores de desktop remoto.
O gerenciamento de patches é uma dádiva morta. Manter seus sistemas atualizados é sempre um bom conselho, especialmente para serviços essenciais de acesso remoto.
Na maioria dos casos, você não precisa expor o RDP para o mundo todo. Você pode usar um firewall, restrições de IP, limitar o acesso via VPN ou usar o acesso just-in-time. Este último reduz bastante o risco e ainda permite que você acesse o serviço quando precisar.
Certifique-se de não usar senhas fáceis de adivinhar para contas habilitadas para RDP. Não permita o acesso remoto a todos os usuários do sistema se eles não precisarem. Além disso, faz sentido implementar alguma forma de bloqueio automático de conta, evitando que invasores adivinhem a senha por meio de força bruta.
Você também pode habilitar a autenticação no nível da rede ou NLA, uma medida de mitigação para evitar o acesso indesejado ao túnel RDP.
Monitoramento e artefatos forenses
Independentemente de quão segura você torne a configuração do RDP, sempre haverá um momento em que os invasores tentarão abusar dela. É quando você deve contar com o registro e o monitoramento para analisar o que está acontecendo. Algumas das fontes importantes de artefatos forenses para RDP incluem:
- Os comandos quser, qwinsta e qprocess que fornecem informações sobre usuários, sessões e processos RDP
- Microsoft-Windows-Terminal-Services-RemoteConnectionManager e Windows-TerminalServices-LocalSessionManager informam sobre as conexões de rede do cliente e o início e a parada das sessões RDP
- E, finalmente, Microsoft-Windows-Security-Auditing inclui os eventos para tentativas de autenticação bem-sucedidas ou malsucedidas.
Gerenciar riscos de RDP para uso seguro
Embora existam riscos que vêm com RDP e alto interesse de invasores em ferramentas de acesso remoto, isso não significa que você não pode implantá-los de uma maneira segura e controlada. Se você levar em consideração as medidas preventivas e configurar o registro e o monitoramento suficientes, estará pronto para prosseguir.