O que são vazamentos de DNS e WebRTC?

Um vazamento de DNS acontece quando seu dispositivo envia consultas de nomes de domínio para fora do túnel da VPN, normalmente ao resolvedor do seu provedor de internet, de modo que ele ainda consegue ver quais sites você visita. Um vazamento de WebRTC é um problema parecido do navegador, em que uma página da web consegue descobrir seu endereço IP real mesmo com a VPN ou o proxy ativo.

Os dois vazamentos são silenciosos: a VPN mostra "conectada" e os sites veem o IP da VPN no tráfego normal. Este guia explica por que cada um acontece, como testar e como corrigir, além do vazamento de IPv6, que está muito ligado a eles.

O que é um vazamento de DNS

Antes de se conectar a www.example.com, seu navegador precisa perguntar a um resolvedor DNS qual é o endereço IP do site. Essa pergunta, e a resposta, revelam qual site você está prestes a visitar. Se você ainda não conhece o processo de consulta, nosso guia sobre como o DNS funciona explica tudo passo a passo.

Uma VPN bem configurada envia as consultas DNS pelo túnel até um resolvedor mantido pelo provedor da VPN ou escolhido por você. Quando isso falha e as consultas vão direto ao resolvedor do seu provedor de internet, você tem um vazamento de DNS. O site continua vendo o IP da VPN, mas seu provedor fica com uma lista de todos os domínios que você consultou, com data e hora.

Causas comuns de vazamentos de DNS

  • O sistema continua usando o resolvedor antigo. O cliente da VPN não consegue substituir as configurações de DNS do sistema, ou o servidor DNS de outro adaptador de rede tem prioridade maior.
  • Consultas em paralelo no Windows. O Windows pode enviar uma consulta aos servidores DNS de várias interfaces de rede ao mesmo tempo e usar a resposta mais rápida, então o resolvedor do provedor vê a consulta mesmo que o da VPN também a veja.
  • DNS por IPv6. A VPN cuida do DNS em IPv4, mas o sistema também tem um resolvedor IPv6 vindo do roteador, que é usado fora do túnel.
  • Split tunneling (túnel dividido). Os aplicativos excluídos da VPN resolvem nomes com o resolvedor normal, por definição.
  • Configurações de DNS manuais no dispositivo ou no roteador que substituem o que a VPN define.
Dica: A configuração de DNS sobre HTTPS (DoH) embutida no navegador envia as consultas ao provedor de DoH que você escolheu, dentro de uma conexão HTTPS criptografada. Com uma VPN ativa, essa conexão também passa pelo túnel, então seu provedor de internet não consegue lê-la, mas suas consultas vão para o provedor de DoH e não para o resolvedor da VPN.

Como testar um vazamento de DNS

Os testes de vazamento de DNS dedicados funcionam fazendo seu navegador consultar vários subdomínios aleatórios e únicos de um domínio cujo servidor autoritativo é controlado por quem faz o teste. O servidor autoritativo registra quais endereços IP de resolvedores pediram esses nomes. Se algum deles pertencer ao seu provedor de internet e não ao da VPN, você tem um vazamento.

Você pode fazer uma versão rápida disso em um terminal. A Akamai mantém um nome especial que responde com o endereço IP do resolvedor que o consultou:

dig +short whoami.akamai.net
nslookup whoami.akamai.net

Execute com a VPN conectada e depois cole o IP retornado em nossa Consulta de ASN. Se a rede pertencer ao seu provedor de internet, seu DNS está vazando. Verifique também quais resolvedores seu sistema está configurado para usar:

  • Windows: ipconfig /all e veja "Servidores DNS" em cada adaptador.
  • macOS: scutil --dns
  • Linux com systemd-resolved: resolvectl status

Como corrigir um vazamento de DNS

  1. Ative a opção de proteção contra vazamento de DNS do cliente da VPN, se ele tiver uma. A maioria dos clientes atuais força todo o DNS pelo túnel e bloqueia a porta 53 para outros servidores.
  2. Remova os servidores DNS configurados manualmente no adaptador de rede ou defina-os como o resolvedor da VPN.
  3. Se a VPN não oferece suporte a IPv6, desative o IPv6 no adaptador ou ative a proteção contra vazamento de IPv6 do cliente.
  4. Ative o kill switch para que nada, nem mesmo o DNS, saia do dispositivo enquanto o túnel se reconecta.
  5. Teste de novo depois de cada alteração, e outra vez depois de se conectar a uma rede Wi-Fi diferente.

O que é um vazamento de WebRTC

O WebRTC é a tecnologia do navegador por trás das chamadas de vídeo e das transferências de arquivos ponto a ponto. Para conectar dois navegadores diretamente, ele precisa descobrir todos os endereços em que cada um pode ser alcançado. Ele faz isso por meio do ICE (Interactive Connectivity Establishment), que reúne uma lista de candidatos:

Tipo de candidatoDe onde vemExemplo
HostAs próprias interfaces de rede do dispositivo192.168.1.23 ou um nome mDNS
Server reflexive (srflx)Um servidor STUN informa o IP público e a porta de onde viu a requisição chegar203.0.113.50
RelayUm servidor TURN que encaminha a mídia quando o caminho direto falhaO IP do servidor TURN

Qualquer página da web pode iniciar esse processo com poucas linhas de JavaScript, sem pedir permissão, e ler os candidatos. O vazamento acontece quando a requisição STUN sai do seu dispositivo fora da VPN ou do proxy. Isso é comum com extensões de proxy do navegador e proxies SOCKS, que encaminham as requisições web, mas não o tráfego UDP do WebRTC, e com o split tunneling. O candidato server reflexive passa então a conter seu IP público real.

Ofuscação mDNS dos endereços locais

Os candidatos host costumavam expor endereços privados da rede local, como 192.168.1.23, o que ajudava a identificar usuários por impressão digital (fingerprinting). As versões atuais do Chrome, Firefox, Safari e Edge os substituem por nomes aleatórios como 3f1c2a9e-7b4d-4c1e-9a52-6d8e0f1b2c3a.local, resolvidos por DNS multicast apenas na rede local. Os navegadores geralmente só revelam endereços locais reais depois que uma página recebe acesso à câmera ou ao microfone.

Como testar e corrigir vazamentos de WebRTC

Execute nosso Teste de vazamento WebRTC com a VPN ou o proxy ativo. Ele lista todos os candidatos que seu navegador expõe. Se algum endereço público for igual ao que você tem com a VPN desligada, você tem um vazamento. Para corrigir:

  • Use uma VPN de túnel completo em vez de um proxy só do navegador. Quando todo o tráfego UDP passa pelo túnel, o servidor STUN vê o IP da VPN.
  • Firefox: abra about:config e defina media.peerconnection.enabled como false. Isso desativa o WebRTC por completo, então as chamadas de vídeo no navegador deixam de funcionar.
  • Navegadores baseados em Chromium: não existe uma configuração simples para o usuário, mas a política corporativa WebRtcIPHandling (por exemplo disable_non_proxied_udp) ou uma extensão confiável pode restringir quais interfaces o WebRTC usa.

Vazamentos de IPv6

Muitas redes agora dão aos dispositivos um endereço IPv4 e um IPv6. Se a sua VPN cria apenas um túnel IPv4, o sistema operacional ainda tem uma rota IPv6 funcionando pelo seu provedor. Os sites que oferecem suporte a IPv6 o preferem, então eles veem seu endereço IPv6 real e globalmente único, que costuma identificar mais do que um endereço IPv4 compartilhado atrás de NAT.

Teste com a VPN conectada usando nosso Teste de IPv6. O resultado esperado é nenhuma conectividade IPv6 ou um endereço IPv6 pertencente ao provedor da VPN. Um endereço da faixa do seu próprio provedor de internet significa um vazamento; corrija ativando o suporte a IPv6 ou a proteção contra vazamento do cliente, ou desativando o IPv6 no adaptador de rede enquanto usa a VPN.

Perguntas frequentes

Meu provedor de internet consegue ver minha navegação se eu tiver um vazamento de DNS?

Ele consegue ver os nomes de domínio que você consulta, não as páginas nem o conteúdo. O tráfego em si continua passando pela VPN, então seu provedor não consegue ver o que você faz em cada site.

Os vazamentos de DNS importam se eu não uso VPN?

O termo só se aplica quando você espera que o DNS vá para outro lugar. Sem VPN, o resolvedor do seu provedor normalmente é usado de qualquer maneira. Você pode mudar para um serviço de DNS criptografado para manter as consultas longe do seu provedor.

Desativar o WebRTC é seguro?

Sim, isso não quebra a navegação normal, mas as chamadas de vídeo no navegador, o compartilhamento de tela e alguns sites de compartilhamento de arquivos deixam de funcionar até você reativá-lo.

Por que o teste de WebRTC mostra um endereço .local?

É a proteção mDNS do navegador funcionando como deveria. O nome aleatório .local esconde do site o IP da sua rede local privada.

Experimente você mesmo

Coloque este guia em prática com nossas ferramentas gratuitas.

Continue lendo

Copiado para a área de transferência