
Prueba de concepto en Python y generador de exploits en C para el use-after-free del kernel de Linux en TCP IPv4/MPTCP (CVE-2026-98432), que desencadena una condición de carrera en la retransmisión de SYN para lograr una escalada de privilegios a root.
Por Gh0st-Bx1 | github.com/Ghost-Bx1
CVSS: 9.8 Crítico | Use-after-free en TCP IPv4 del kernel Linux vía MPTCP
Use-after-free en la función tcp_v4_syn_recv_sock() del kernel Linux. Durante el handshake TCP, el campo ireq->ireq_opt se transfiere al socket hijo sin copia. Una CPU que retransmite un SYN lee las opciones bajo solo rcu_read_lock(), mientras que inet_sock_destruct() usa kfree() en lugar de kfree_rcu(), causando UAF en ip_options_build().
Vector: Condición de carrera entre la retransmisión de SYN y la destrucción del socket
Impacto: Lectura/escritura fuera de los límites - potencial escalada de privilegios a root
| Distribución | Versiones |
|---|---|
| Ubuntu | 20.04, 22.04, 24.04, 26.04, 26.10 |
| Debian | bullseye, bookworm |
| RHEL/CentOS | 8, 9 |
| Cualquier distribución | kernel < fix |
kfree_rcu() en inet_sock_destruct() y tcp_v4_reqsk_destructor()
# Instalar dependencias (solo stdlib de Python)
python poc.py --help
# PoC - desencadenar condición de carrera
python poc.py --target 192.168.1.10 --port 80 --threads 8 --duracao 30
# Generar exploit en C
python poc.py --target 192.168.1.10 --gerar-c exploit.c
# Información técnica
python poc.py --info
| Opción | Descripción |
|---|---|
--target | IP objetivo |
--port | Puerto TCP (por defecto: 80) |
--threads | Hilos de SYN flood (por defecto: 4) |
--src-ip | IP de origen para spoofing |
--duracao | Duración en segundos (por defecto: 60) |
--gerar-c | Generar exploit en C en un archivo |
--info | Mostrar información técnica |
--verbose | Registro detallado |
Para uso exclusivo en entornos autorizados - pruebas de seguridad, CTF e investigación.
El autor no se responsabiliza por el uso indebido.
Ghost Tools Arsenal | Por Gh0st-Bx1