
CVE-2026-98432 - LINUX KERNEL IPv4 TCP USE-AFTER-FREE AUDIT CVSS 9.8 (Critical) | Remote Code Execution & Kernel Denial-of-Service
A Windows and Windows Server network audit tool designed to assess remote Linux hosts for CVE-2026-98432 — a critical remote code execution (RCE) and kernel denial-of-service vulnerability affecting the Linux kernel's IPv4 TCP network stack.
| Metric | Details |
|---|---|
| CVE ID | CVE-2026-98432 |
| Vulnerability Type | Use-After-Free (UAF) / Race Condition (CWE-416) |
| CVSS v3.1 Score | 9.8 (Critical) — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Affected Component | Linux Kernel IPv4 Networking (net/ipv4/tcp_ipv4.c, net/ipv4/af_inet.c) |
| Affected Versions | Linux Kernel versions 4.4 and later (prior to patched releases) |
| Exploitation Vector | Remote unauthenticated network attacker sending crafted IPv4 TCP SYN packets with IP options |
| Impact | Remote Code Execution (RCE) in kernel space, system crash (Kernel Panic / DoS), memory corruption |
During an incoming IPv4 TCP three-way handshake (SYN packet):
inet_opt and ireq_opt), the Linux kernel stores a copy of these options in a pending connection request structure to echo them back in the SYN-ACK reply.inet_sock_destruct() and tcp_v4_reqsk_destructor()) freed these options immediately using a synchronous kfree().Because this code executes inside the kernel TCP stack before incoming traffic reaches user-space applications, any listening IPv4 TCP port on the server exposes the kernel to potential remote exploitation.
The vulnerability was resolved upstream by Eric Dumazet (commit e3f33b0a1d89: "ipv4: free inet_opt and ireq_opt after an RCU grace period"). Minimum patched versions:
5.10.272 or later5.15.223 or later6.1.190 or later6.6.159 or later6.12.113 or later6.18.56 or later7.2.10 or later7.3.0 or laterlinux version 6.8.0-149.149 or higherlinux version 5.15.0-203.213 or higherlinux version 7.0.0-43.43 or higherlinux version 7.3.0-10.10 or higherThe scanner provides non-destructive, safe verification from any Windows workstation or server:
.NET sockets to test standard exposed TCP ports (SSH 22, HTTP 80, HTTPS 443, Alt HTTP 8080/8443, MySQL 3306, PostgreSQL 5432, Redis 6379). Any open IPv4 TCP port indicates that the kernel TCP stack is actively receiving and processing packets.ssh.exe) to securely query uname -r, /etc/os-release, and active firewall mitigations without executing disruptive exploit payloads.VULNERABLE: Host is running an affected kernel version without the fix.SECURE / PATCHED: Host is running a patched kernel release.MANUAL VERIFICATION: Custom or vendor-specific backport requires manual review.Double-click check_cve_2026_98432.bat or run from CMD:
.\check_cve_2026_98432.bat
You will be prompted to:
192.168.1.100).powershell -ExecutionPolicy Bypass -File .\check_cve_2026_98432.ps1 -ServerIp "192.168.1.100" -SshUser "admin"
powershell -ExecutionPolicy Bypass -File .\check_cve_2026_98432.ps1 -ServerIp "192.168.1.100" -SshPort 2222 -SshUser "ubuntu"
powershell -ExecutionPolicy Bypass -File .\check_cve_2026_98432.ps1 -ServerIp "192.168.1.100" -SkipSsh
Apply official security updates from your distribution's repository and reboot the server:
Ubuntu / Debian:
sudo apt update
sudo apt --only-upgrade install linux-image-generic
sudo reboot
RHEL / AlmaLinux / Rocky Linux / CentOS:
sudo dnf update kernel
sudo reboot
Arch Linux:
sudo pacman -Syu linux
sudo reboot
Verify Current Running Kernel:
uname -r
The vulnerability requires TCP packets containing IPv4 options. If you cannot reboot immediately, drop all incoming TCP packets carrying IPv4 options using iptables:
# Insert rule at top of INPUT chain
sudo iptables -I INPUT 1 -p tcp -m ipv4options --any-opt -j DROP
# Persist the rule (Debian/Ubuntu)
sudo iptables-save | sudo tee /etc/iptables/rules.v4
# Persist the rule (RHEL/CentOS)
sudo service iptables save
(Note: Standard internet TCP traffic rarely utilizes IPv4 options, so dropping them typically causes no disruption to standard web, SSH, or database workloads).