O tunelamento de DNS é uma técnica de ataque DNS que envolve a codificação de informações de outros protocolos ou programas em consultas e respostas DNS. O tunelamento de DNS geralmente envolve cargas de dados que podem se conectar a um servidor DNS alvo, permitindo que o invasor gerencie aplicativos e o servidor remoto.
O tunelamento de DNS tende a depender da conectividade de rede externa do sistema comprometido — o tunelamento de DNS precisa de uma maneira de acessar um servidor DNS interno com acesso à rede. Os invasores também precisam controlar um servidor e um domínio que podem funcionar como um servidor autoritativo para executar programas executáveis de carga útil de dados e o tunelamento do lado do servidor.
Impacto do tunelamento DNS
O DNS foi criado inicialmente para resolução de nomes e não para troca de dados, portanto, muitas vezes não é visto como um risco para exfiltração de dados ou trocas maliciosas de informações. A maioria das organizações concentra seus esforços de segurança no tráfego da web e de e-mail, pois os considera uma fonte regular de ataques. Como resultado, o DNS é frequentemente negligenciado.
O DNS é um protocolo confidencial e arraigado, então os criminosos cibernéticos podem tirar vantagem do fato de que muitas organizações não costumam investigar pacotes DNS em busca de comportamento mal-intencionado.
Além disso, pacotes de aplicativos de tunelamento são hoje uma indústria e amplamente acessíveis pela internet. Um invasor não precisa ser particularmente sofisticado para realizar explorações de tunelamento de DNS.
As ameaças representadas por explorações de tunelamento de DNS incluem:
- Explorações de tunelamento de DNS podem fornecer aos invasores um canal secundário acessível para exfiltrar informações roubadas. O DNS fornece um meio secreto de comunicação para contornar firewalls.
- Os criminosos cibernéticos usam diferentes tipos de protocolos, como HTTP ou SSH, para conectar-se ao DNS, o que lhes permite passar secretamente dados roubados ou tráfego IP.
- O túnel DNS pode ser usado como um canal de controle completo para um host interno que já foi explorado. Isso permite que cibercriminosos baixem códigos para malware, roubem secretamente registros da organização ou tenham acesso remoto completo aos servidores, entre outros.
- Os túneis DNS também podem ser usados para contornar portais cativos, para que não seja necessário pagar por serviços de wi-fi.
- O tunelamento de DNS usa o protocolo DNS para tunelar informações e malware por meio de um modelo cliente-servidor.
Casos típicos de abuso incluem:
- Exfiltração de dados — cibercriminosos extraem informações confidenciais via DNS. Esta não é a abordagem mais eficaz para obter dados do PC da vítima, considerando toda a codificação e custos adicionais, mas funciona.
- Comando e controle (C2) — os cibercriminosos utilizam o protocolo DNS para enviar comandos simples para, por exemplo, instalar um trojan de acesso remoto (RAT).
- Tunelamento IP sobre DNS — alguns utilitários podem ter atualizado a pilha IP por meio da convenção de resposta de consulta DNS. Isso simplifica as ações maliciosas.
Saiba mais em nosso guia detalhado sobre ataques de amplificação de DNS .
Como funciona o tunelamento DNS
O tunelamento DNS utiliza o protocolo DNS para tunelar malware e outros dados por meio de um modelo cliente-servidor. Isso normalmente envolve as seguintes etapas:
- O cibercriminoso registra um domínio, por exemplo, malsite.com. O servidor de nomes do domínio direciona para o servidor do cibercriminoso, onde o malware de tunelamento está instalado.
- O cibercriminoso infecta um computador com malware, que penetra no firewall da organização. As solicitações de DNS sempre têm permissão para entrar e sair do firewall, permitindo que o computador infectado envie consultas ao resolvedor de DNS. O resolvedor de DNS então envia solicitações de endereços IP para servidores de domínio raiz e de nível superior.
- O resolvedor de DNS encaminha as consultas para o servidor do cibercriminoso, onde o programa de tunelamento é implementado. Assim, é criada uma conexão entre o cibercriminoso e a vítima por meio do resolvedor de DNS. O invasor pode usar esse túnel para fins maliciosos, como a exfiltração de informações. Não há conexão direta entre o cibercriminoso e a vítima, dificultando o rastreamento do computador do cibercriminoso.
5 técnicas e ferramentas para detectar tunelamento DNS
1. Detecção de anomalias
A detecção de anomalias é uma ferramenta poderosa para identificar potenciais tunelamentos de DNS. Este método envolve o monitoramento do tráfego DNS e a busca por padrões ou comportamentos que se desviem do normal. Se uma solicitação ou resposta de DNS específica parecer incomum, pode ser um sinal de tunelamento de DNS.
Por exemplo, se uma consulta DNS contiver quantidades anormalmente grandes de dados, ou se houver um número excessivo de solicitações DNS de uma fonte específica, isso pode indicar atividade de tunelamento DNS. O desafio aqui, no entanto, é definir o que constitui um comportamento “normal”. Isso pode variar muito dependendo da natureza da rede e do seu uso típico.
2. Análise de carga útil
A análise de carga útil envolve o exame dos dados reais transmitidos em consultas e respostas DNS. Este pode ser um método muito eficaz para detectar tunelamento DNS, pois os dados transmitidos em um cenário de tunelamento geralmente são bem diferentes daqueles de uma consulta ou resposta DNS normal.
No entanto, a análise de payload pode exigir muitos recursos. Exige uma quantidade significativa de poder de processamento e capacidade de armazenamento, além de conhecimento avançado de protocolos DNS e estruturas de dados. Além disso, payloads criptografados podem ser difíceis de analisar, tornando esse método menos eficaz em alguns casos.
3. Limitação de taxa
A limitação de taxa é uma técnica que limita o número de consultas DNS que podem ser feitas a partir de uma fonte específica em um determinado período. A ideia é que, ao limitar a taxa de consultas, fica mais difícil para um invasor usar o tunelamento de DNS para exfiltrar dados ou obter acesso não autorizado.
Embora este método possa ser eficaz em muitos casos, tem suas desvantagens. Limitações de taxa agressivas podem interferir no tráfego DNS legítimo e impactar negativamente o desempenho da rede. Além disso, não impede completamente o tunelamento de DNS — apenas o torna mais lento.
4. Sistemas de Detecção de Intrusão (IDS)
Sistemas de Detecção de Intrusão (IDS) são uma classe de software de segurança que monitora o tráfego de rede em busca de sinais de atividade maliciosa. Muitas soluções de IDS são capazes de detectar tunelamento de DNS buscando padrões e comportamentos indicativos de tal atividade.
Um IDS pode ser uma ferramenta valiosa na detecção de tunelamento de DNS, mas não é uma solução mágica. Como qualquer método de detecção, ele tem suas limitações e potencial para falsos positivos. Além disso, a eficácia de um IDS depende das regras e assinaturas que utiliza para detectar ameaças. Se o IDS não for mantido atualizado com as informações mais recentes sobre ameaças, sua eficácia pode ser significativamente reduzida.
5. Ferramentas de monitoramento de DNS
Por fim, há uma série de ferramentas especializadas disponíveis, projetadas especificamente para monitorar o tráfego DNS e detectar tunelamento de DNS. Essas ferramentas geralmente combinam vários dos métodos acima em um único pacote, oferecendo uma solução mais abrangente para detectar tunelamento de DNS. Essas ferramentas podem ser bastante eficazes, mas também exigem um certo nível de experiência para serem usadas com eficiência.
Conteúdo relacionado: Leia nosso guia sobre ataques de inundação de DNS .
Melhores práticas para evitar ataques de tunelamento DNS
Prevenir ataques de tunelamento de DNS requer uma abordagem multifacetada, combinando elementos técnicos e humanos. Aqui estão algumas práticas recomendadas que podem ajudar as organizações a proteger suas redes contra esse tipo de ataque.
Monitore regularmente o tráfego DNS
O monitoramento contínuo do tráfego DNS é a primeira linha de defesa contra ataques de tunelamento de DNS. Procure por anomalias, como um volume anormalmente alto de consultas DNS, registros de texto DNS extensos ou solicitações DNS para domínios desconhecidos ou suspeitos. Soluções avançadas de detecção de ameaças podem ajudar a automatizar esse processo, fornecendo monitoramento e alertas em tempo real.
Implementar extensões de segurança de DNS (DNSSEC)
DNSSEC é um conjunto de extensões que adiciona uma camada de segurança ao protocolo DNS. Ele utiliza assinaturas digitais para verificar a autenticidade dos dados DNS, prevenindo spoofing e outros ataques baseados em DNS. No entanto, o DNSSEC não impede diretamente o tunelamento de DNS, pois não inspeciona a carga útil dos pacotes DNS. Ele pode, no entanto, ser combinado com outras medidas para aprimorar a segurança geral do DNS.
Utilizar regras de firewall
Firewalls podem ser configurados para bloquear o tráfego DNS de saída para todos os servidores DNS, exceto os autorizados. Isso pode ajudar a prevenir ataques de tunelamento de DNS, limitando a capacidade de agentes maliciosos se comunicarem com seus servidores DNS. Além disso, firewalls podem ser usados para inspecionar e filtrar o tráfego DNS, bloqueando consultas ou respostas DNS suspeitas.
Limitar ou bloquear consultas DNS desnecessárias
Bloquear ou limitar consultas DNS desnecessárias pode ajudar a reduzir a superfície de ataque do tunelamento DNS. Isso inclui bloquear consultas DNS para domínios inexistentes e limitar a taxa de consultas DNS de uma única fonte. Os servidores DNS podem ser configurados para rejeitar consultas para determinados tipos de registros comumente usados no tunelamento DNS, como registros TXT ou NULL.
Patches e atualizações regulares
Manter sistemas, softwares e dispositivos de rede atualizados é um aspecto crítico da segurança da rede. A aplicação regular de patches pode ajudar a proteger contra vulnerabilidades que podem ser exploradas para realizar ataques de tunelamento de DNS. Os patches de segurança devem ser aplicados assim que estiverem disponíveis, e as atualizações devem ser testadas antes da implantação para garantir que não introduzam novas vulnerabilidades.

Deixe um comentário