Segundo informações de um usuário de VPN, um bug do Android vaza consultas DNS, mesmo quando o kill switch VPN está ativado.
Um usuário do Mullvad VPN descobriu que dispositivos Android vazam consultas DNS ao trocar de servidor VPN, mesmo que o recurso “VPN sempre ativo” tenha sido ativado com a opção “Bloquear conexões sem VPN”.
Bug do Android vaza consultas DNS
O recurso “VPN sempre ativa” foi projetado para iniciar o serviço VPN quando o dispositivo é inicializado e mantê-lo funcionando enquanto o dispositivo ou perfil estiver ligado.
Ativar a opção “Bloquear conexões sem VPN” (também conhecida como kill switch) garante que TODO o tráfego de rede e conexões passem pelo túnel VPN sempre conectado, bloqueando olhares indiscretos de monitorar a atividade dos usuários na web.
No entanto, como Mullvad descobriu ao investigar o problema detectado em 22 de abril, um bug do Android vaza algumas informações de DNS mesmo quando esses recursos estão habilitados na versão mais recente do sistema operacional (Android 14).
Esse bug ocorre ao usar aplicativos que fazem chamadas diretas para a função getaddrinfo C, que fornece tradução independente de protocolo de um nome de host de texto para um endereço IP.
Eles descobriram que o Android vaza tráfego DNS quando uma VPN está ativa (mas nenhum servidor DNS foi configurado) ou quando um aplicativo VPN reconfigura o túnel, trava ou é forçado a parar.
“Não encontramos nenhum vazamento de aplicativos que usam apenas APIs Android, como DnsResolver. O navegador Chrome é um exemplo de aplicativo que pode usar getaddrinfo diretamente“, explicou Mullvad.
“O acima se aplica independentemente de ‘VPN sempre ativa’ e ‘Bloquear conexões sem VPN’ estarem ativados ou não, o que não é o comportamento esperado do sistema operacional e, portanto, deve ser corrigido no upstream do sistema operacional.”
Potenciais mitigações
Mullvad disse que o primeiro cenário de vazamento de DNS, onde o usuário muda para outro servidor ou altera o servidor DNS, pode ser facilmente mitigado configurando um servidor DNS falso enquanto o aplicativo VPN está ativo.
No entanto, ainda não foi encontrada uma solução para o vazamento de consulta DNS de reconexão do túnel VPN, o que é válido para todos os outros aplicativos VPN Android, visto que eles provavelmente também serão afetados por esse problema.
“Deve ficar claro que essas soluções alternativas não devem ser necessárias em nenhum aplicativo VPN. Nem é errado que um aplicativo use getaddrinfo para resolver nomes de domínio”, explicou Mullvad.
“Em vez disso, esses problemas devem ser resolvidos no sistema operacional para proteger todos os usuários do Android, independentemente dos aplicativos que usam.”
Em outubro de 2022, Mullvad também descobriu que dispositivos Android estavam vazando consultas de DNS (por exemplo, endereços IP, pesquisas de DNS e tráfego HTTPS) toda vez que eles se conectavam a uma rede WiFi devido a verificações de conectividade, mesmo que a opção “VPN sempre ativa” estivesse ativada com “Bloquear conexões sem VPN” ativada.
As fugas de tráfego DNS representam um risco significativo para a privacidade dos utilizadores, expondo potencialmente as suas localizações aproximadas e as plataformas online com as quais interagem.
Dada a gravidade deste problema, você pode parar de usar dispositivos Android para atividades confidenciais ou implementar proteções adicionais para mitigar o risco de tais vazamentos até que o Google resolva o bug e faça backport do patch para versões mais antigas do Android.
Em uma resposta ao site BleepingComputer, um porta-voz do Google enviou a seguinte declaração:
“A segurança e a privacidade do Android são uma prioridade máxima. Estamos cientes deste relatório e analisando suas descobertas.”