
Aviso técnico y análisis defensivo de CVE-2026-98432, un use-after-free en IPv4 TCP del kernel de Linux, con versiones afectadas, comandos de detección y guía de parcheo.
Vulnerabilidad de corrupción de memoria TCP IPv4 en el kernel de Linux
Análisis técnico • Investigación de vulnerabilidades • Seguridad defensiva
Descripción general • Análisis • Versiones afectadas • Detección • Mitigación
CVE-2026-98432 es una vulnerabilidad crítica de Use-After-Free (UAF) que afecta al subsistema de red IPv4 del kernel de Linux.
La vulnerabilidad se debe a una gestión incorrecta del ciclo de vida de la memoria durante el procesamiento concurrente de solicitudes de conexión TCP.
En condiciones específicas, la memoria del kernel que contiene las opciones de socket IPv4 puede liberarse mientras otra ruta de ejecución aún la está accediendo.
Esto crea una posible condición de corrupción de memoria que puede provocar:
| Propiedad | Detalles |
|---|---|
| ID de CVE | CVE-2026-98432 |
| Producto | Kernel de Linux |
| Componente | Redes IPv4 |
| Vulnerabilidad | Use-After-Free |
| CWE | CWE-825 |
| CVSS v3.1 | 9.8 Crítica |
| Vector de ataque | Red |
| Complejidad del ataque | Baja |
| Privilegios requeridos | Ninguno |
| Interacción del usuario | Ninguna |
| Protocolo | IPv4 / TCP |
| Introducida en | Kernel de Linux 4.4 |
| Publicada | 15 de octubre de 2026 |
| Archivos afectados | net/ipv4/af_inet.c, net/ipv4/tcp_ipv4.c |
La vulnerabilidad implica la propiedad y la desasignación de las estructuras de opciones de socket IPv4.
Durante el establecimiento de la conexión TCP, la función:
tcp_v4_syn_recv_sock()
transfiere la propiedad de:
ireq->ireq_opt
al socket hijo:
newinet->inet_opt
La transferencia ocurre sin copiar la estructura subyacente.
Otra CPU puede procesar concurrentemente una solicitud SYN retransmitida y acceder a las mismas opciones a través de rutas de lectura protegidas por RCU.
Si la memoria asociada se libera usando kfree() ordinario mientras los lectores aún están accediendo a ella, puede ocurrir una condición de Use-After-Free.
| Función | Propósito |
|---|---|
tcp_v4_syn_recv_sock() | Crea sockets TCP hijos |
tcp_v4_send_synack() | Envía respuestas TCP SYN-ACK |
inet_csk_route_req() | Procesa el enrutamiento de sockets de solicitud |
ip_options_build() | Construye opciones IPv4 |
inet_sock_destruct() | Destruye sockets de internet |
tcp_v4_reqsk_destructor() | Destruye sockets de solicitud TCP |
El comportamiento problemático de desasignación:
kfree(opt);
La corrección upstream utiliza desasignación compatible con RCU:
kfree_rcu(opt, rcu);
Esto retrasa la reclamación de memoria hasta que haya transcurrido el período de gracia de RCU correspondiente, lo que permite que los lectores existentes finalicen de forma segura.
La principal preocupación de seguridad es el acceso indebido a la memoria dentro del kernel.
Las posibles consecuencias incluyen inestabilidad del sistema, corrupción de memoria y una explotación más grave según el entorno de ejecución.
La vulnerabilidad se introdujo en el kernel de Linux 4.4.
Las siguientes versiones upstream contienen las correcciones correspondientes:
| Rama del kernel | Versión corregida |
|---|---|
| 5.10 | 5.10.272 |
| 5.15 | 5.15.223 |
| 6.1 | 6.1.190 |
| 6.6 | 6.6.159 |
| 6.12 | 6.12.113 |
| 6.18 | 6.18.56 |
| 7.2 | 7.2.10 |
| 7.3 | 7.3 |
Importante: Los proveedores de distribuciones pueden aplicar correcciones de seguridad retroactivas. Una versión del kernel que parezca más antigua no significa automáticamente que el paquete instalado sea vulnerable.
Los siguientes comandos están destinados a la inspección defensiva y no explotan la vulnerabilidad.
uname -r
cat /etc/os-release
uname -a
Debian / Ubuntu / Kali:
dpkg -l | grep linux-image
RHEL / Fedora:
rpm -qa | grep '^kernel'
sysctl net.ipv4.tcp_migrate_req
Estas comprobaciones proporcionan información del sistema pero no confirman de forma independiente el estado de la vulnerabilidad. Verifique el paquete instalado con el aviso de seguridad de su distribución.
Debian / Ubuntu / Kali Linux:
sudo apt update
sudo apt full-upgrade
RHEL / Fedora:
sudo dnf update kernel
Reinicia después de instalar el kernel actualizado:
sudo reboot
Verifique la versión en ejecución:
uname -r
Nota: Las restricciones de red son medidas de defensa en profundidad, no sustitutos de la aplicación del parche del kernel.
El kernel de Linux resuelve este problema mediante el uso de desasignación de memoria compatible con RCU en los destructores afectados.
| Rama del kernel | Commit de corrección |
|---|---|
| 5.10 | b3b027ef0cd322bfa839b9aaf5b27551eea54cf6 |
| 5.15 | 95a8c8fa9f27dce64c40c41c062de7728bf34ab5 |
| 6.1 | 89b5b1eb7d633c33832b7ff2c02e19a144705036 |
| 6.6 | 742f73df544e03744f2981c467d6542fe8172a2a |
| 6.12 | 11a03ce3c4a62d84c10ccdfe47f8075006498568 |
| 6.18 | a47406c769f72c070386985488f1c4d057df86b2 |
| 7.2 | 26d4c36d318cffbbd160884a0e4cec0da4da4936 |
| 7.3 | e3f33b0a1d89d738e2b913dab519226eaf76e15b |
Para los sistemas de producción, se prefieren las actualizaciones completas del kernel compatibles con el proveedor en lugar de aplicar manualmente commits individuales (cherry-picking).
Referencias de seguridad oficiales: