Pesquisadores detalharam uma técnica de bypass de Rede Privada Virtual (VPN) chamada de TunnelVision que permite que atores maliciosos espionem o tráfego de rede da vítima estando na mesma rede local.
O método de “desmascaramento” recebeu o identificador CVE CVE-2024-3661 (pontuação CVSS: 7.6). Ele impacta todos os sistemas operacionais que implementam um cliente DHCP e têm suporte para rotas de opção 121 do DHCP.
Essencialmente, o TunnelVision envolve o roteamento do tráfego sem criptografia por meio de uma VPN por meio de um servidor DHCP configurado pelo atacante usando a opção de rota estática de classe 121 para definir uma rota na tabela de roteamento do usuário VPN.
Ele também se origina do fato de que o protocolo DHCP, por design, não autentica mensagens de opção desse tipo, expondo-as à manipulação.
O DHCP é um protocolo cliente/servidor que fornece automaticamente a um host de Protocolo de Internet (IP) seu endereço IP e outras informações de configuração relacionadas, como a máscara de sub-rede e o gateway padrão para acessar a rede e seus recursos.
Isso também ajuda a configurar de forma confiável os endereços IP por meio de um servidor que mantém um pool de endereços IP e atribui um endereço a qualquer cliente habilitado para DHCP quando ele é iniciado na rede.
Porque esses endereços IP são dinâmicos (ou seja, alugados) em vez de estáticos (ou seja, atribuídos permanentemente), os endereços que não estão mais em uso são automaticamente devolvidos ao pool para realocação.
A vulnerabilidade torna possível para um atacante com a capacidade de enviar mensagens DHCP manipular rotas para redirecionar o tráfego de VPN, permitindo assim ler, perturbar ou possivelmente modificar o tráfego de rede que se esperava estar protegido pela VPN.
“Por esse técnica não depender da exploração das tecnologias VPN ou protocolos subjacentes, ele funciona completamente independentemente do provedor VPN ou implementação”, afirmaram os pesquisadores do Leviathan Security Group, Dani Cronce e Lizzie Moratti.
Em outras palavras, o TunnelVision engana um usuário de VPN, fazendo-o acreditar que suas conexões estão seguras e roteadas por um túnel criptografado, quando na realidade foram redirecionadas para o servidor do atacante para que possam ser potencialmente inspecionadas.
No entanto, para decifrar com sucesso o tráfego da VPN, o cliente DHCP do host alvo deve implementar a opção DHCP 121 e aceitar um lease DHCP do servidor controlado pelo atacante.
O ataque também é semelhante ao TunnelCrack, que é projetado para vazar tráfego fora de um túnel VPN protegido ao se conectar a uma rede Wi-Fi não confiável ou a um ISP invasor, resultando em ataques de adversário no meio (AitM).
O problema afeta todos os principais sistemas operacionais como Windows, Linux, macOS e iOS, com exceção do Android, já que ele não tem suporte para a opção DHCP 121. Também afeta ferramentas VPN que se baseiam exclusivamente em regras de roteamento para proteger o tráfego do host.
A Mullvad confirmou que as versões desktop de seu software têm regras de firewall para bloquear qualquer tráfego para IPs públicos fora do túnel VPN, mas reconheceu que a versão iOS é vulnerável ao TunnelVision.
No entanto, ainda não integraram e lançarem um correção devido à complexidade da empreitada, que a empresa sueca disse estar trabalhando há “um tempo”.
“A vulnerabilidade TunnelVision (CVE-2024-3661) expõe um método para que atacantes ignorem a encapsulação VPN e redirecionem o tráfego fora do túnel VPN”, disseram pesquisadores do Zscaler, descrevendo-o como uma técnica que emprega um ataque de esgotamento DHCP para criar um canal lateral.
“Essa técnica envolve usar a opção 121 do DHCP para rotear o tráfego sem criptografia por meio de uma VPN, enviando-o finalmente para a internet por um canal lateral criado pelo atacante.”
Para mitigar o TunnelVision, é recomendável que as organizações implementem verificação de DHCP, proteções ARP e segurança de porta em switches. Também é aconselhável implementar namespaces de rede no Linux para corrigir o comportamento.