Serviços de VPN são utilizados com frequência para reforçar a proteção dos seus dados em conexões à internet. Mas e se esse tipo de solução acabar sendo a origem de uma brecha de segurança? É isso o que pode acontecer com um tipo de ataque batizado de TunnelVision. O problema afeta vários serviços privados de VPN.
Começa na distribuição de IPs
Uma VPN cria um “túnel virtual” entre o dispositivo do usuário e o servidor de destino, que pode ser uma página web, uma loja, uma plataforma de streaming, entre outros serviços online. Para isso, o dispositivo se conecta ao servidor da VPN. Em seguida, esse servidor se conecta ao destino. Toda essa comunicação é criptografada.
Mas a vulnerabilidade TunnelVision quebra essa lógica. Os analistas de segurança que identificaram o problema contam que a base da brecha está na manipulação do serviço de DHCP da rede, que define endereços IP para os dispositivos que se conectam a ela.
Essa manipulação é feita de modo que o serviço de DHCP substitua as regras de roteamento padrão e, assim, o tráfego da VPN seja desviado. Consequentemente, esses dados não são criptografados pela VPN e podem ser encaminhados à interface de rede que está se comunicando com o serviço de DHCP.
Com base nessa dinâmica, o TunnelVision pode ser usado para coleta de dados particulares ou para até espionagem do usuário. Todo ou apenas parte do tráfego pode ser desviado por meio dessa abordagem, o que permite ataques direcionados.
O problema afeta predominante soluções de VPN comerciais, que são aquelas que usamos para ocultação de endereço IP ou para acesso a serviços online com bloqueio regional, por exemplo.
Sistemas operacionais sujeitos ao TunnelVision
O TunnelVision recebeu a identificação CVE-2024-3661. A criticidade do problema ainda está em análise. Mesmo assim, convém considerar a descoberta um problema importante, afinal, o TunnelVision afeta qualquer sistema operacional que implementa serviços de DHCP com suporte a rotas com opção 121.
Isso inclui os sistemas operacionais Windows, macOS, iOS e Linux. O Android não é afetado, pois não suporta DCHP com opção 121. Sistemas baseados no Linux geralmente contêm uma configuração que atenua os efeitos do TunnelVision, mesmo assim, ainda são vulneráveis.
O vídeo abaixo exibe uma demonstração do problema:
Prevenção para o TunnelVision
Os pesquisadores da Leviathan Security que identificaram o TunnelVision não tratam o problema exatamente como vulnerabilidade porque ele não explora falhas de software ou quebra protocolos de VPN. Essencialmente, esse é um problema de arquitetura. Então, como usuário, há pouco ou nada que você possa fazer momento.
Ainda que sem especificar quais, os analistas informaram que algumas empresas de VPN já foram avisadas. Elas é que devem adotar medidas preventivas. Nas organizações que implementam VPNs próprias, cabe ao time de administradores mitigar o problema.
Em todos os casos, a solução pode envolver desativação de rotas com opção 121 quando a VPN estiver em uso, implementação cuidadosa de regras de firewall e recursos de proteção ou monitoramentos sobre DHCP. Como o problema é muito complexo, cada caso deve ser estudado individualmente.
Para ajudar na divulgação do problema e incentivar uma busca por soluções efetivas, os pesquisadores também encaminharam previamente o estudo para as entidades CISA (Agência de Segurança Cibernética e Infraestrutura) e EFF (Fundação Fronteira Eletrônica).