Nova vulnerabilidade que permite que invasores sequestrem conexões VPN no Linux e sistemas Unix

Pesquisadores descobriram uma nova vulnerabilidade que permite que invasores sequestrem conexões VPN no Linux e sistemas Unix. Confira os detalhes dessa nova ameaça!

Conexões VPN são usadas em todo o mundo por empresas e usuários comuns para ter mais segurança. Mas isso pode ter mudado recentemente.

Nova vulnerabilidade que permite que invasores sequestrem conexões VPN no Linux e sistemas Unix
Nova vulnerabilidade que permite que invasores sequestrem conexões VPN no Linux e sistemas Unix

Pesquisadores de segurança descobriram uma nova vulnerabilidade, que permite que invasores em potencial sequestrem conexões VPN em dispositivos *NIX afetados (o que inclui o linux) e injetem cargas de dados arbitrárias nos fluxos IPv4 e IPv6 TCP.

Nova vulnerabilidade permite que invasores sequestrem conexões VPN no Linux e sistemas Unix

Eles revelaram a falha de segurança rastreada como CVE-2019-14899 para as distros e a equipe de segurança do kernel do Linux, bem como para outros impactados, como Systemd, Google, Apple, OpenVPN e WireGuard.

Sabe-se que a vulnerabilidade afeta a maioria das distribuições Linux e sistemas operacionais semelhantes ao Unix, incluindo FreeBSD, OpenBSD, macOS, iOS e Android.

Uma lista incompleta atualmente de sistemas operacionais vulneráveis ​​e os sistemas init que eles acompanham está disponível abaixo, com mais a serem adicionados depois que forem testados e afetados:

  • Ubuntu 19.10 (systemd)
  • Fedora (systemd)
  • Debian 10.2 (systemd)
  • Arch 2019.05 (systemd)
  • Manjaro 18.1.1 (systemd)
  • Devuan (sysV init)
  • MX Linux 19 (Mepis + antiX)
  • Void Linux (runit)
  • Slackware 14.2 (rc.d)
  • Deepin (rc.d)
  • FreeBSD (rc.d)
  • OpenBSD (rc.d)

Essa falha de segurança “permite que um invasor adjacente à rede determine se outro usuário está conectado a uma VPN, o endereço IP virtual atribuído ao servidor VPN e se há ou não uma conexão ativa com um determinado site”, de acordo com William J. Tolley, Beau Kujath, e Jedidiah R. Crandall, pesquisadores Breakpointing Bad da Universidade do Novo México.

Esses pesquisadores disseram que:

“Além disso, somos capazes de determinar os números exatos de seq e ack contando pacotes criptografados e/ou examinando seu tamanho. Isso nos permite injetar dados no fluxo TCP e nas conexões de seqüestro”

Os ataques que exploram o CVE-2019-14899 funcionam contra o OpenVPN, o WireGuard e o IKEv2/IPSec, mas os pesquisadores ainda estão testando sua viabilidade contra o Tor.

Eles também observam que a tecnologia VPN usada não parece ser importante, pois os ataques funcionaram durante os testes, mesmo quando as respostas recebidas dos alvos foram criptografadas, considerando que o tamanho dos pacotes e o número de pacotes enviados foram suficientes para encontrar o tipo de pacotes de dados que estavam sendo entregues pelo túnel criptografado da VPN.

Este ataque não funcionou contra qualquer distribuição Linux testamos até o lançamento do Ubuntu 19.10, e percebemos que as configurações rp_filter foram definidas para o modo “solto”. Vemos que as configurações padrão em sysctl.d/50-default.conf no repositório sistematizado foram alteradas de modo “rigoroso” para “solto” em 28 de novembro de 2018, então as distribuições usando uma versão de sistema sem configurações modificadas após essa data agora são vulneráveis. A maioria das distribuições de Linux que testamos que usam outros sistemas init deixar o valor como 0, o padrão para o kernel Linux.

Os pesquisadores descobriram que a maioria das distribuições Linux testadas eram vulneráveis ​​a ataques que exploravam essa falha.

Eles também descobriram que todas as distros que usam versões do systemd lançadas após 28 de novembro de 2018, que vêm com a filtragem de caminho reverso alternada do modo restrito para o modo solto, são vulneráveis.

Diante disso, todas as distribuições Linux que usam uma versão systemd com configurações padrão após esta data são vulneráveis.

É importante observar, porém, que, apesar de algumas distros com versões específicas do sistema serem vulneráveis, sabe-se que a falha afeta vários sistemas init e não está relacionada apenas ao systemd.

Além disso, o consultor de segurança de rede Noel Kuntze disse em uma resposta ao relatório de divulgação que apenas implementações de VPN baseadas em rota são impactadas por essa vulnerabilidade.

Um suposto funcionário da Amazon Web Services também afirmou que a distribuição do Amazon Linux e os produtos VPN da AWS não são afetados por ataques que exploram essa falha.

A mitigação é possível

Felizmente, a mitigação é possível de acordo com os pesquisadores e pode ser alcançada potencialmente ativando a filtragem de caminho reverso, usando a filtragem falsa – filtrando endereços IP falsos (falsos) – ou com a ajuda do tamanho e do tempo criptografado dos pacotes.

Estas são as etapas necessárias para executar um ataque projetado para explorar esta vulnerabilidade e sequestrar a conexão VPN de um destino:

1) Determinando o endereço IP virtual do cliente VPN.
2) Usando o endereço IP virtual para fazer inferências sobre conexões ativas.
3) Usando as respostas criptografadas para pacotes não solicitados para determinar os números de sequência e reconhecimento da conexão ativa para seqüestrar a sessão TCP.

O procedimento completo para reproduzir a vulnerabilidade nas distribuições Linux é explicado em detalhes no relatório de divulgação disponível publicamente nesse enderço.
 
A equipe de pesquisa planeja publicar um artigo com uma análise aprofundada dessa vulnerabilidade e suas implicações, mas somente após encontrar uma solução adequada.

O que está sendo falado no blog

No Post found.

Post Views: 508
Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.

Deixe um comentário

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.