
Comprueba un servidor Linux en busca de CVE-2026-98432 (use-after-free en TCP IPv4, CVSS 9.8): causa raíz explicada, script de comprobación de solo lectura y mitigaciones.
Comprenda y compruebe CVE-2026-98432, la condición de carrera en el handshake TCP de IPv4 del kernel de Linux que permite a un atacante remoto usar memoria del kernel liberada. El Frontier Red Team de Anthropic lo convirtió en un exploit de root sin interacción contra servidores con un listener de multipath TCP (MPTCP). A fecha del 30 de octubre de 2026, Ubuntu y Red Hat aún no tienen un kernel corregido.
En su lugar, pegue la salida del comando en el navegador: https://fbuff.com/tools/cve-2026-98432-checker/ (se ejecuta localmente, no se sube nada)
Toda conexión TCP comienza con un handshake: el cliente envía SYN, el servidor responde SYN-ACK, el cliente contesta ACK. Entre SYN y ACK el kernel mantiene un pequeño marcador de posición para la conexión medio abierta, un request socket. Si el SYN del cliente llevaba opciones IPv4 (Record Route, Timestamp y similares), el kernel las conserva junto al marcador de posición (ireq_opt), porque el SYN-ACK tiene que devolverlas.
Cuando llega el ACK, tcp_v4_syn_recv_sock() convierte el marcador de posición en un socket completo y le entrega el mismo bloque de opciones en lugar de una copia. Ahora dos objetos apuntan a un mismo bloque de memoria. Cuando se destruye el socket completo, inet_sock_destruct() libera ese bloque de inmediato con un simple kfree().
El marcador de posición reside en la tabla hash de conexiones establecidas, que otras CPU leen sin bloqueo (ese diseño llegó con el commit 079096f103fa, "tcp/dccp: install syn_recv requests into ehash table", Linux 4.4, 2015). Si el cliente retransmite su SYN en el momento adecuado, otra CPU está reenviando el SYN-ACK y lee las opciones en ip_options_build() mientras el bloque se está liberando: un use-after-free.
Piense en un guardarropa que entrega el mismo resguardo a dos personas. Cuando una se va, el encargado tira el resguardo mientras la otra todavía se dirige al mostrador con él.
La corrección (commit upstream e3f33b0a1d89, "ipv4: free inet_opt and ireq_opt after an RCU grace period", 7.3-rc7) libera el bloque con kfree_rcu(), que espera hasta que todas las CPU hayan terminado de leer. IPv6 no se ve afectado por el problema principal porque tcp_v6_syn_recv_sock() copia las opciones. Existe una segunda ruta hacia la misma memoria a través de la migración de requests (net.ipv4.tcp_migrate_req=1 o un programa BPF_SK_REUSEPORT_SELECT_OR_MIGRATE).
| Evaluador | Puntuación | Nota |
|---|---|---|
| Equipo CVE del kernel de Linux (CNA) | 9.8 | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Red Hat | 8.1 | AC:H: la carrera es difícil de ganar (preliminar) |
| Ubuntu | 9.8, prioridad High |
MPTCP permite que una conexión use varias rutas a la vez. En Linux es opcional: un programa debe solicitar un socket MPTCP, y ss -Mltn lista los que están a la escucha. El exploit de Anthropic se dirige a "servidores Linux con un listener de multipath TCP". Ni el registro CVE ni la corrección mencionan MPTCP, y Anthropic no ha dicho si los servidores sin uno pueden ser comprometidos. Un listener MPTCP es la ruta probada a root; todo servidor sin parchear sigue ejecutando el código defectuoso.
| Distribución | Estado |
|---|---|
| Debian 12 bookworm | Corregido: linux 6.1.190-1 (DLA-4841-1), linux-6.12 6.12.113-1~deb12u1 |
| Debian 13 trixie | Corregido: linux 6.12.113-1 (DSA-6568-1) |
| Ubuntu 22.04, 24.04, 26.04, 26.10 | Vulnerable, corrección en curso |
| Ubuntu 16.04, 18.04, 20.04 | Vulnerable |
| Ubuntu 14.04 | No afectado |
| Red Hat Enterprise Linux | Afectado; Red Hat afirma que ninguna mitigación cumple sus criterios |
| Upstream stable | Corregido en 5.10.272, 5.15.223, 6.1.190, 6.6.159, 6.12.113, 6.18.56, 7.2.10 y 7.3 |
curl -fsSLO https://raw.githubusercontent.com/fbuff-tools/cve-2026-98432-checker/main/check.sh
sh check.sh
El script lee uname -r, /etc/os-release, el changelog del paquete del kernel (rpm -q --changelog, o apt changelog, que requiere red), sysctl net.mptcp.enabled net.ipv4.tcp_migrate_req y ss -Mltn. Imprime un veredicto y sale con 0 (parcheado o no afectado), 1 (vulnerable) o 2 (no se pudo determinar). Solo lee; no se envía ni se modifica nada. Ejecútalo en el host: los contenedores comparten el kernel del host.
Los kernels de distribución como 6.8.0-85 de Ubuntu o 5.14.0-570 de RHEL aplican correcciones retroportadas sin cambiar el número de versión, por lo que solo su changelog puede indicarlo. Las versiones de estilo upstream (6.12.113+deb13) se comparan con las versiones corregidas indicadas arriba.
sudo apt update && sudo apt full-upgrade # Debian, Ubuntu
sudo dnf upgrade kernel # RHEL family, Amazon Linux 2023
sudo zypper patch # SUSE
sudo reboot
sudo sysctl -w net.mptcp.enabled=0
sudo sysctl -w net.ipv4.tcp_migrate_req=0
printf 'net.mptcp.enabled = 0\nnet.ipv4.tcp_migrate_req = 0\n' | sudo tee /etc/sysctl.d/90-cve-2026-98432.conf
ip_options_build o ip_build_and_send_pkt (journalctl -k), o ráfagas de SYN con opciones IPv4 desde un mismo origen.Ninguno de los pasos 2-4 sustituye al parche, y ningún proveedor los ha confirmado como una solución alternativa completa.
Relacionado: KSMBD checker, HTTP2Shell checker, PHP2Shell checker.
Información actualizada al 30 de octubre de 2026; el estado de las correcciones cambia rápidamente, así que consulte el rastreador de su proveedor. Licencia MIT. Creado por fbuff.