
Kit de ferramentas para o use-after-free de TCP no Linux CVE-2026-98432: verificações de patch do kernel, acionamento do oráculo de corrida, análise de UAF em pcap, recuperação do deslocamento de KASLR e endurecimento do nftables.

Apenas para Uso Ético – Testes de Segurança Autorizados
Este repositório fornece ferramentas apenas para profissionais de segurança autorizados, blue teams e testadores de penetração. O acesso não autorizado a sistemas de computador é ilegal sob a CFAA (EUA), Computer Misuse Act (Reino Unido), TCK 243/244 (Turquia) e leis semelhantes em todo o mundo.

CVE-2026-98432 é um use-after-free na pilha TCP IPv4 do kernel Linux. Um SYN recebido que carrega opções IPv4 faz com que o kernel salve uma cópia dessas opções no request socket. Se o SYN for retransmitido no momento certo, uma CPU pode liberar essa cópia enquanto outra ainda a está lendo para construir o SYN-ACK, resultando em um use-after-free em ip_options_build().
Existe um segundo gatilho quando o servidor migra solicitações de conexão pendentes entre sockets (net.ipv4.tcp_migrate_req=1, ou um programa BPF_SK_REUSEPORT_SELECT_OR_MIGRATE). Ambos os gatilhos compartilham a mesma causa raiz: inet_sock_destruct() e tcp_v4_reqsk_destructor() liberam as opções com um kfree() simples em vez de aguardar um período de carência do RCU.
tcp_v4_save_options() armazena as opções IPv4 recebidas (ireq_opt) no request socket.tcp_v4_syn_recv_sock() entrega ireq_opt ao socket filho sem copiá-lo.inet_sock_destruct() libera inet_opt com um kfree() simples.tcp_v4_send_synack() → ip_options_build(), que lê as opções já liberadas.A correção upstream é o commit e3f33b0a1d89 ("ipv4: free inet_opt and ireq_opt after an RCU grace period"), que converte ambas as liberações para kfree_rcu(). O IPv6 não é afetado pelo problema principal.
5.15.0-xxx com os números upstream. Consulte o próprio security tracker do fornecedor.| Data | Observação | Fonte |
|---|---|---|
| 2026-11-04 | O Ubuntu 22.04 LTS (e versões mais recentes) ainda tem a correção apenas em -proposed; usuários padrão de -updates permanecem em um kernel vulnerável até que a correção seja promovida. O MPTCP está habilitado por padrão nas versões afetadas, embora o bug não seja específico do MPTCP. | Ubuntu CVE Tracker · Ubuntu Blog – Fixes in -proposed |
| 2026-11-02 | A AWS confirma que a falha afeta o kernel Linux 4.4+ e que os blueprints do Lightsail baseados em Ubuntu estão no escopo; a mitigação é instalar um kernel corrigido ou aplicar uma regra de firewall temporária descartando pacotes TCP IPv4 com opções IP. | AWS Docs – Address CVE-2026-98432 on Lightsail |
| 2026-10-15 | Anúncio oficial da CVE do kernel: a causa raiz é a ausência do período de carência do RCU antes do kfree() de inet_opt / ireq_opt; corrigido em 5.10.272, 5.15.223, 6.1.190, 6.6.159, 6.12.113, 6.18.56, 7.2.10, 7.3-rc7. | Linux CVE Announce – Openwall |
Nota: Essas observações confirmam a exposição (kernel vulnerável + MPTCP padrão no Ubuntu de fábrica) e o status oficial da correção; elas não são uma confirmação de que o exploit neste repositório foi executado com sucesso em qualquer host específico.
| Ferramenta | Finalidade | Usuário Pretendido |
|---|---|---|
cve_2026_98432 | Kit de ferramentas para equipes vermelhas e azuis. Verificações de patch no código-fonte e em tempo de execução, sondagem de rede, oráculo de corrida com detecção de reutilização de marcadores, análise de pcap, recuperação de deslocamento de KASLR e orientações de mitigação. Comando único com menu interativo ou flags diretas. | Equipes vermelhas, equipes azuis, pentesters autorizados |
--check | Inspeção local da versão do kernel e da árvore de código-fonte. | Equipes azuis, auditores |
--probe | Confirma que um listener TCP está acessível e que as opções SYN IPv4 chegam à pilha. | Equipes vermelhas, equipes azuis |
--race | Oráculo de corrida baseado em marcadores. Envia SYNs forjados e inspeciona SYN-ACKs em busca de reutilização de marcadores entre fluxos. | Equipes vermelhas (Prob) |
--pcap | Análise offline de pcap. Detecta evidências de UAF e candidatos a ponteiros do kernel. | Equipes azuis (Parcial) |
--map | Recuperação do deslocamento de KASLR a partir de ponteiros de texto vazados usando um System.map. | Equipes vermelhas (Parcial) |
--harden | Aplica ou pré-visualiza mitigações (MPTCP desativado, migração desativada, descarte de opções IP). | Equipes azuis (Prob) |
| Rótulo | Significado |
|---|---|
| (sem rótulo) | Determinístico. Mesma entrada, mesma saída. |
| (Prob) | Os resultados da corrida podem variar entre execuções. A ferramenta repete as tentativas por uma duração limitada. |
| (Parcial) | Depende de entrada correta. A ferramenta funciona quando um pcap válido ou um System.map correspondente é fornecido. |