Tech News

CVE-2026-98432: Critical Linux Kernel Flaw Could Allow Remote Root Access

Rated 9.8 out of 10, the CVE-2026-98432 flaw in the Linux kernel could, according to Anthropic, allow remote command execution as root without authentication. What are the real risks? How can you protect yourself? Here’s what you need to know.

This vulnerability lies in the code that establishes new TCP connections over IPv4. For context, a TCP connection opens with a three-way handshake: the client sends a SYN, the server replies with a SYN-ACK, and then the client confirms with an ACK. If the response takes too long, the client resends its SYN. An IPv4 packet can also carry IP options, optional fields added to its header, which the server keeps in memory during this handshake.

That is where the security flaw lies. Once the connection is established, the tcp_v4_syn_recv_sock() function passes those options to the new socket without copying them: the pending request and the socket point to the same memory area. If that socket is destroyed, the memory is freed, even though another CPU core may still be reading it to respond to a retransmitted SYN. The kernel then reads memory it no longer owns: this is a use-after-free issue. In simple terms, imagine two colleagues looking at the same file: one shreds it while the other is still reading it. And if an attacker manages to place their own data in that location in the meantime, that is the content the kernel may use. IPv6 is not affected by this scenario, because options there are copied for each socket.

The discovery of this vulnerability goes to Xinyang Ge, a researcher at Anthropic. On October 27, 2026, the company published an article from its Frontier Red Team detailing five exploit chains produced by Claude with an unpublished internal model, including one on Linux. This once again highlights the role of AI in discovering security flaws...

The bug behind this security flaw was introduced in Linux 4.4, according to the Linux kernel CVE team’s advisory. The fix, which delays the release of these options, is included in several Linux kernel versions: 5.10.272, 5.15.223, 6.1.190, 6.6.159, 6.12.113, 6.18.56, 7.2.10, and 7.3.

Remote root access via MPTCP, enabled by default in Go

According to Anthropic, the exploit targets Linux servers with an MPTCP listener (multipath TCP, which allows a connection to use multiple network paths). It unfolds in two stages:

  • KASLR bypass: by triggering the bug at the right moment, the attacker forces the kernel to leak extra bytes back. As soon as a response contains a kernel memory address, the attacker knows where their elements are in memory, which defeats KASLR, the protection that randomizes these addresses.
  • Execution flow hijack: the same bug is used to overwrite a callback pointer with the address of a payload already placed in kernel memory. A shell command is then executed as root.

"A failed attempt only causes the handshake to fail", Anthropic notes. This is the case when the race condition is not met. The key point is that a failure does not crash the server: the attacker can therefore keep trying until they hit the right timing. During Anthropic’s test, it took 48 minutes to recover a kernel address, then 5 more minutes to execute the command as root. Anthropic did not publish the exploit code, the kernel version, or the test configuration.

MPTCP might seem marginal, since an application has to explicitly request it when opening its socket. But since Go 1.24, Go programs do this on their own: the Go documentation states that MPTCP is enabled by default on listening sockets. On October 29, the Go security team reminded users in a public message that the bug is not specific to MPTCP: systems without an MPTCP listener may also be vulnerable. Since Go is widely used, including for infrastructure tools, this means there may be more exposed machines than expected... To check on a machine, the ss -lM command lists listening MPTCP sockets.

This flaw may initially have been underestimated, and Red Hat’s response is a good example. On October 29, Red Hat assigned this security flaw a 5.9/10 score and moderate severity. Since then, the assessment has been revised: the flaw is now rated 9.8/10 and considered critical. The flaw "allows a remote unauthenticated attacker to cause kernel memory corruption or an immediate system crash.", Red Hat writes.

Which kernel should you install to stay protected?

Here is the status as of November 2, 2026:

  • RHEL : fixes published on November 1 for RHEL 8 (kernel-4.18.0-553.182.1.el8_10), RHEL 9 (kernel-5.14.0-687.64.1.el9_8) and RHEL 10 (kernel-6.12.0-211.72.1.el10_2). The real-time kernel for RHEL 9 and RHEL CoreOS (OpenShift) remain affected.
  • AlmaLinux 8, 9 and 10 : fixed kernels available since October 30, but only in the testing repository, according to the AlmaLinux blog.
  • Debian : fixed on Debian 13 (linux 6.12.113-1) and Debian 12 (linux 6.1.190-1 or linux-6.12 6.12.113-1~deb12u1).
  • SUSE : SLES 15 SP4 to SP6 LTSS, SLES 16, SLE Micro 5.3 to 5.5, SUSE Linux Micro 6.2, and openSUSE Leap 16.0 are fixed. SLES 15 SP7 is under validation, and SUSE Linux Micro 6.0 remains affected.
  • Amazon Linux 2 and 2023 : all kernel packages have been fixed since October 30. The AWS bulletin also details the status of its managed services (EKS, ECS, Bottlerocket, RDS...).
  • Oracle Linux : UEK kernels fixed since October 16.
  • Proxmox VE : fix integrated into the proxmox-kernel-7.0.14-25-pve kernel, according to the security bulletin published on October 31.
  • Ubuntu : still no fixed kernel. Canonical’s page indicates a fix in progress for versions 22.04 through 26.10, while 20.04 and earlier versions remain listed as vulnerable.

Until the patch arrives: filter IPv4 options

For machines that cannot yet be updated or rebooted, Red Hat has published a security bulletin with an nftables rule that drops IPv4 TCP packets carrying IP options, which trigger this flaw. The hdrlength field corresponds to the length of the IPv4 header, expressed in 32-bit words: above 5 (20 bytes), the header contains options, which remains rare in legitimate traffic.

table inet cve_2026_98432 {
    chain input {
        type filter hook input priority -310; policy accept;
        ip protocol tcp ip hdrlength > 5 counter drop
    }
}

The file is loaded with nft --file cve-2026-98432.nft, and the table is removed with nft delete table inet cve_2026_98432 once the kernel is patched.

Two additional measures are also mentioned by AWS, AlmaLinux, and the Go team:

  • Disable MPTCP : if you do not use this feature, sysctl -w net.mptcp.enabled=0 prevents it for new sockets. Remember to make this setting persistent via a file in /etc/sysctl.d/ and to restart services that are already listening.
  • On the Go side : the environment variable GODEBUG=multipathtcp=0 disables MPTCP by default for a program. The godebug multipathtcp=0 directive in the go.mod file does the same at build time.

None of these measures replaces the fix. "The best fix for this vulnerability is to move to a patched kernel version", the Go team insists, noting that this temporary workaround is fragile: a single forgotten MPTCP listener is enough to leave the system exposed.

As of October 30, the flaw did not appear in the CISA KEV catalog, and no active exploitation has been reported to date.

author avatar
Florian Burnel Co-founder of IT-Connect
Systems and network engineer, co-founder of IT-Connect and Microsoft MVP "Cloud and Datacenter Management". I'd like to share my experience and discoveries through my articles. I'm a generalist with a particular interest in Microsoft solutions and scripting. Enjoy your reading.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.