Ir para o conteúdo
Todos os artigos

· por NetProtector Security Team

CVE-2026-98432: vulnerabilidade crítica na pilha TCP do kernel Linux

Ilustração: pacotes de rede fluem para um chip de kernel, um pacote manipulado provoca uma fissura

Uma vulnerabilidade na pilha TCP do kernel Linux pode ser desencadeada pela rede sem autenticação e, no pior dos casos, pode conduzir a privilégios de root. A falha está presente no código desde o Linux 4.4 – ou seja, há quase dez anos. Existem patches disponíveis, mas ainda não chegaram a todas as distribuições.

O que é a CVE-2026-98432?

Trata-se de uma falha use-after-free no processamento de ligações TCP IPv4, classificada com CVSS 3.1 9.8 (crítica). Durante o estabelecimento da ligação, o kernel transfere as opções IPv4 do pedido de ligação para o novo socket. Desde o Linux 4.4, estes passos são executados sem bloqueio do socket em escuta. Se um pacote SYN repetido chegar a outro núcleo do processador enquanto o novo socket está a ser libertado, o kernel lê memória já libertada.

Um ataque requer:

  • acesso de rede a um serviço TCP IPv4 de um sistema sem patch,
  • um pacote de ligação com opções IPv4 (por exemplo, Record Route ou Timestamp) e a respetiva repetição,
  • nenhuma credencial e nenhuma interação do utilizador.

Uma race condition perdida apenas faz falhar o estabelecimento da ligação – pelo que um atacante pode tentar quantas vezes quiser.

Qual é o perigo concreto?

Um investigador da Anthropic reportou a falha. Em 27 de outubro de 2026, a Anthropic relatou um exploit que obtém privilégios de root em servidores com um listener Multipath TCP (MPTCP); este não foi publicado. No início de novembro, não era conhecido nenhum exploit público funcional e a vulnerabilidade não constava do catálogo KEV da agência norte-americana CISA. Isto pode mudar rapidamente.

Importante: a equipa de segurança do Go alerta que o Go, a partir da versão 1.24, ativa o MPTCP por predefinição em listeners Linux. Os serviços desenvolvidos em Go podem, portanto, preencher o requisito do exploit conhecido sem que ninguém o tenha ativado conscientemente.

Versões afetadas e corrigidas

Estão afetados todos os kernels a partir da versão 4.4 sem a correção. A falha está corrigida no Linux 7.3, bem como nas versões estáveis 5.10.272, 5.15.223, 6.1.190, 6.6.159, 6.12.113, 6.18.56 e 7.2.10. Debian, SUSE, Oracle Linux e Amazon Linux já disponibilizaram kernels corrigidos para parte das suas versões; a Red Hat classifica a vulnerabilidade como crítica. No final de outubro, ainda estavam pendentes atualizações para RHEL e Ubuntu; para o RHEL, segundo relatos, foram disponibilizadas no início de novembro. O advisory da sua distribuição indica a situação atual.

O que deve fazer agora

  1. Atualizar o kernel e reiniciar – um kernel instalado mas não arrancado não oferece proteção. Verifique com uname -r o que está efetivamente em execução.

  2. Reduzir a superfície de ataque até à atualização:

    sysctl -w net.mptcp.enabled=0
    sysctl -w net.ipv4.tcp_migrate_req=0
    

    Para tornar a alteração permanente, utilize um ficheiro em /etc/sysctl.d/. Isto reduz a probabilidade, mas não impede totalmente a exploração.

  3. Identificar listeners MPTCP: ss -M -l -n -p mostra os serviços que oferecem Multipath TCP – verifique em especial as aplicações Go.

  4. Filtrar opções IPv4 sempre que possível: descartar no perímetro os pacotes com opções IP protege adicionalmente os serviços expostos. Teste previamente se alguma aplicação depende delas.

A nossa avaliação

As vulnerabilidades de kernel exploráveis pela rede são raras, mas particularmente graves: afetam todos os serviços, não apenas uma aplicação, e também appliances, routers ou hosts de contentores que têm Linux no seu núcleo. Além da aplicação rápida de patches, ajuda uma arquitetura de rede que torne acessíveis apenas os serviços que realmente precisam de o ser – e um sistema de intrusion prevention capaz de detetar e bloquear pacotes invulgares, como ligações TCP com opções IP.

Fontes