Um vazamento de DNS ocorre quando um dispositivo que deveria rotear todo o tráfego de rede por um serviço de privacidade, como uma VPN ou um proxy, envia sem querer consultas DNS diretamente para a internet pelos servidores DNS padrão do ISP, revelando assim a atividade online do usuário. Isso compromete a privacidade, pois o provedor de internet (ISP) pode registrar os sites e serviços acessados, mesmo que a conexão principal pareça protegida.
Entendendo a resolução de DNS
O Domain Name System (DNS) traduz nomes de domínio legíveis por humanos (por exemplo, example.com) em endereços IP legíveis por máquinas (por exemplo, 192.0.2.1). Quando um usuário tenta acessar um site, o sistema operacional (SO) envia uma consulta DNS a um servidor DNS configurado. Sem proxy ou VPN, essa consulta normalmente vai para os servidores DNS do ISP. Com proxy ou VPN, a intenção é que essas consultas sejam roteadas com segurança pelo serviço, geralmente usando os resolvedores DNS do próprio serviço ou encaminhando a consulta de forma segura.
DNS padrão (UDP/TCP porta 53)
As consultas DNS tradicionais são enviadas sem criptografia, principalmente por UDP na porta 53. Isso as torna vulneráveis a escuta e manipulação. Mesmo quando o tráfego principal de dados é criptografado por um proxy ou VPN, consultas DNS sem criptografia ainda podem revelar hábitos de navegação.
Protocolos de DNS criptografado
Para reduzir os riscos de privacidade e segurança do DNS padrão, surgiram vários protocolos criptografados:
- DNS over HTTPS (DoH): encapsula as consultas DNS dentro do tráfego HTTPS, normalmente por TCP na porta 443. Isso mistura o tráfego DNS com o tráfego web comum, dificultando distingui-lo e bloqueá-lo.
- DNS over TLS (DoT): criptografa as consultas DNS usando TLS, normalmente por TCP na porta 853. O DoT oferece um canal dedicado e criptografado para DNS.
- DNSCrypt: um protocolo mais antigo que criptografa o tráfego DNS entre o cliente e o resolvedor DNS.
Esses protocolos aumentam a privacidade ao impedir que terceiros observem ou adulterem as consultas DNS. No entanto, seu uso não impede por si só um vazamento de DNS se o sistema voltar ao DNS não criptografado em cenários específicos.
Mecanismos de um vazamento de DNS
Vazamentos de DNS geralmente surgem de configurações incorretas ou de comportamentos específicos do SO que contornam o túnel seguro pretendido.
Tratamento de DNS no nível do SO
Sistemas operacionais podem apresentar comportamentos que levam a vazamentos:
- Windows Smart Multi-Homed Name Resolution: em sistemas Windows com várias interfaces de rede ativas (por exemplo, Wi-Fi e Ethernet, ou uma interface VPN/proxy e uma interface física), o SO pode consultar todos os servidores DNS disponíveis ao mesmo tempo e usar a resposta do mais rápido. Se a resposta mais rápida vier do servidor DNS do ISP, ocorre um vazamento.
- Fallback de IPv6: mesmo que o tráfego IPv4 seja corretamente roteado por um proxy ou VPN, o SO pode tentar resolver nomes de domínio por IPv6. Se o serviço de proxy/VPN não suportar IPv6 plenamente ou se seus resolvedores DNS IPv6 não estiverem configurados corretamente, as consultas DNS IPv6 podem contornar o túnel e ir direto para os servidores DNS IPv6 do ISP.
- Servidores DNS atribuídos por DHCP: ao se conectar a uma rede, o dispositivo recebe endereços de servidores DNS via DHCP. Se o cliente de proxy/VPN não conseguir sobrescrever ou bloquear corretamente essas configurações padrão de DNS, o SO pode continuar usando-as.
Falhas do cliente de proxy/VPN
- Travamentos ou desconexões do software: se o software cliente de proxy ou VPN travar ou cair inesperadamente, o sistema pode voltar às configurações de rede padrão, incluindo os servidores DNS do ISP, antes que o usuário perceba.
- Split tunneling mal configurado: embora o split tunneling possa ser um recurso legítimo, uma configuração incorreta pode fazer com que consultas DNS de aplicativos ou destinos excluídos contornem o túnel seguro.
- Ausência de proteção contra vazamento de DNS: alguns serviços de proxy ou VPN podem não implementar mecanismos robustos de prevenção, como definir automaticamente seus próprios servidores DNS ou bloquear consultas DNS externas.
Configurações de DNS específicas do navegador
Alguns navegadores (por exemplo, Chrome, Firefox) oferecem suas próprias implementações de DoH, que podem ser configuradas independentemente das configurações de DNS do SO. Se um navegador estiver configurado para usar um provedor DoH específico e o serviço de proxy/VPN não interceptar nem gerenciar isso, as consultas DNS do navegador podem contornar o túnel seguro.
Consequências de um vazamento de DNS
- Comprometimento da privacidade: a consequência mais significativa. Seu ISP, e possivelmente outras entidades que monitoram o tráfego do ISP, conseguem ver suas consultas DNS, revelando sites, serviços de streaming e aplicativos online que você acessa. Esses dados podem ser usados para perfilamento, publicidade direcionada ou vigilância governamental.
- Falha ao contornar restrições geográficas: se o usuário depende de um serviço de proxy para contornar bloqueios geográficos, um vazamento de DNS revela sua localização geográfica real aos provedores de conteúdo, resultando em bloqueio de acesso.
- Riscos de segurança: consultas DNS podem revelar informações sensíveis sobre recursos internos da rede se o usuário estiver conectado a uma rede corporativa. Além disso, consultas DNS não criptografadas são suscetíveis a DNS spoofing, em que um atacante pode redirecionar usuários para sites maliciosos.
Detectando um vazamento de DNS
Vários métodos podem ser usados para detectar vazamentos de DNS.
Ferramentas online de teste de vazamento de DNS
Diversos sites oferecem detecção automatizada de vazamento de DNS. Essas ferramentas normalmente seguem estes passos:
1. Instruem seu navegador a resolver um conjunto de nomes de domínio únicos.
2. Observam quais servidores DNS realizam a resolução desses domínios.
3. Comparam os endereços IP dos servidores DNS que responderam com o endereço IP do nó de saída do seu túnel de proxy/VPN.
4. Se os endereços IP dos servidores DNS pertencerem ao seu ISP ou a qualquer outro terceiro não associado ao seu serviço de proxy/VPN, há indício de vazamento.
Exemplos dessas ferramentas incluem dnsleaktest.com e ipleak.net.
Verificação manual dos servidores DNS
Ferramentas de linha de comando permitem descobrir quais servidores DNS seu sistema está usando no momento.
Windows:
ipconfig /all
Procure por DNS Servers no seu adaptador de rede ativo.
Para verificar conexões ativas na porta 53:
netstat -an | findstr ":53"
Isso lista as conexões UDP e TCP ativas na porta 53. Se você vir conexões com endereços IP diferentes do DNS do seu proxy/VPN ou de 127.0.0.1 (caso o proxy trate o DNS localmente), há indício de vazamento.
macOS:
scutil --dns
Examine as entradas nameserver[0].
Para verificar conexões ativas na porta 53:
lsof -i :53
Linux:
cat /etc/resolv.conf
As entradas nameserver indicam os servidores DNS configurados. Observe que, em sistemas que usam systemd-resolved ou serviços semelhantes, o resolv.conf pode apontar para um resolvedor local (por exemplo, 127.0.0.53), que então encaminha as consultas. Nesses casos, é necessário investigar mais a fundo a configuração do resolvedor local.
Para verificar conexões ativas na porta 53:
sudo netstat -tulpn | grep :53
Prevenindo vazamentos de DNS
Uma prevenção eficaz exige uma abordagem em camadas, combinando recursos robustos do cliente de proxy/VPN com configurações no nível do SO.
1. Use um serviço de proxy/VPN robusto
Um serviço de proxy ou VPN de qualidade deve oferecer proteção nativa contra vazamento de DNS. Recursos-chave incluem:
* Servidores DNS próprios: o serviço deve rotear todas as consultas DNS pelos seus próprios servidores DNS seguros e criptografados.
* Proteção contra DNS rebinding: impedir que respostas DNS maliciosas redirecionem o tráfego para endereços de rede internos.
* Kill switch: bloqueia automaticamente todo o tráfego de internet se a conexão segura cair, evitando vazamentos de dados e de DNS.
* Proteção contra vazamento de IPv6: tunela o tráfego IPv6, desativa o IPv6 ou roteia as consultas DNS IPv6 pelos próprios resolvedores.
2. Configure as definições de DNS do sistema operacional
Configurar manualmente o DNS do seu SO permite sobrescrever os padrões e evitar vazamentos.
Defina o DNS para o endereço de loopback (127.0.0.1):
Ao usar um cliente de proxy ou VPN que atua como resolvedor DNS local, configure o DNS do seu adaptador de rede para 127.0.0.1. Isso força todas as consultas DNS a serem tratadas pelo cliente local, que então as encaminha com segurança pelo túnel.
Desative o Windows Smart Multi-Homed Name Resolution:
Esse recurso pode ser desativado pelo Editor de Diretiva de Grupo ou pelo Editor do Registro.
- Editor de Diretiva de Grupo (gpedit.msc) — Windows Pro/Enterprise:
- Vá até
Computer Configuration>Administrative Templates>Network>DNS Client. - Localize
Turn off Smart Multi-Homed Name Resolution. - Defina como
Enabled.
- Vá até
- Editor do Registro (regedit.exe) — todas as versões do Windows:
- Vá até
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters. - Crie um novo valor DWORD (32 bits) chamado
DisableSmartNameResolution. - Defina o valor como
1.
- Vá até
Desative o IPv6 (se não for necessário):
Se o seu serviço de proxy/VPN não suportar plenamente o tunelamento de IPv6, desativar o IPv6 no adaptador de rede pode evitar vazamentos de DNS relacionados a IPv6.
- Windows:
- Vá em
Network and Sharing Center>Change adapter settings. - Clique com o botão direito no adaptador de rede ativo >
Properties. - Desmarque
Internet Protocol Version 6 (TCP/IPv6).
- Vá em
- macOS/Linux:
Consulte a documentação da distribuição/versão específica para desativar o IPv6, o que geralmente envolve arquivos de configuração de rede ou parâmetros de kernel.
3. Aplique regras de firewall
Configure seu firewall para bloquear todo o tráfego DNS de saída (UDP/TCP porta 53, TCP porta 853 para DoT, TCP porta 443 para DoH) que não se origine do seu aplicativo de proxy/VPN nem seja explicitamente permitido por ele. Assim, qualquer tentativa de contornar o túnel seguro para consultas DNS é bloqueada.
4. Configuração de DNS no nível do navegador
Se usar um navegador com DoH nativo, configure-o para usar um provedor DoH alinhado aos seus objetivos de privacidade ou desative o DoH do navegador para garantir que todas as requisições DNS sejam tratadas pelo resolvedor do sistema (e, portanto, do proxy/VPN).
5. Use protocolos de DNS criptografado em todo o sistema
Considere configurar seu sistema para usar resolvedores DoH, DoT ou DNSCrypt diretamente, especialmente se o seu serviço de proxy suportar encaminhamento para endpoints de DNS criptografado específicos. Isso adiciona uma camada extra de criptografia às suas consultas DNS antes mesmo de elas chegarem ao resolvedor DNS do serviço de proxy.
Comparação dos métodos de resolução de DNS
| Característica | DNS padrão (UDP/TCP 53) | DNS over TLS (DoT — TCP 853) | DNS over HTTPS (DoH — TCP 443) |
|---|---|---|---|
| Criptografia | Não | Sim (TLS) | Sim (HTTPS/TLS) |
| Porta | 53 | 853 | 443 |
| Mistura de tráfego | Distinto | Distinto | Mistura-se ao tráfego web |
| Facilidade de bloqueio | Fácil | Moderada (porta dedicada) | Difícil (compartilhada com a web) |
| Privacidade | Baixa | Alta | Alta |
| Impacto no desempenho | Mínimo | Baixo | De baixo a moderado |
| Caso de uso | Legado, redes internas | DNS seguro dedicado | Focado em web, evasão de firewall |
Ao entender os mecanismos dos vazamentos de DNS e aplicar essas estratégias de prevenção, os usuários podem aumentar significativamente sua privacidade e segurança online ao usar serviços de proxy.
