Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-64024

CVE-2026-64024: Linux Kernel TCP ISN Prediction Vulnerability

CVE-2026-64024 is a TCP ISN prediction flaw in the Linux kernel that enables attackers to predict sequence numbers due to stale per-CPU variable leaks. This article covers the technical details, impact, and fixes.

Published:

CVE-2026-64024 Overview

CVE-2026-64024 is a Linux kernel vulnerability in the TCP subsystem that allows remote attackers to predict Initial Sequence Numbers (ISNs). The flaw stems from a stale per-CPU tcp_tw_isn value that leaks between packets when a SYN is dropped along one of several kernel receive paths. A subsequent SYN handled on the same CPU consumes the leftover TIME_WAIT-derived ISN in tcp_conn_request(), receiving a potentially predictable sequence number. ISN prediction weakens TCP session integrity and enables spoofing and injection attacks against connections that depend on sequence number unpredictability.

Critical Impact

Attackers can trigger ISN prediction over the network without authentication, undermining TCP session integrity across affected Linux kernel builds.

Affected Products

  • Linux kernel versions containing the blamed commit that moved tcp_tw_isn from skb->cb[] to a per-CPU variable
  • Distributions shipping the vulnerable TCP stack in tcp_v4_rcv and tcp_v6_rcv
  • Systems using standard IPv4/IPv6 TCP with TIME_WAIT socket reuse

Discovery Timeline

  • 2026-07-19 - CVE-2026-64024 published to NVD
  • 2026-07-20 - Last updated in NVD database

Technical Details for CVE-2026-64024

Vulnerability Analysis

The vulnerability resides in the Linux kernel TCP receive path. A prior commit moved the TIME_WAIT-derived ISN from the socket buffer control block (skb->cb[]) into a per-CPU variable named tcp_tw_isn. The change assumed that whichever CPU wrote the value via __this_cpu_write(tcp_tw_isn, isn) in tcp_v4_rcv() or tcp_v6_rcv() would immediately consume it inside tcp_conn_request() for the same packet.

That assumption breaks whenever a packet is dropped between the producer and the consumer. The leftover ISN remains in the per-CPU slot and is picked up by the next SYN processed on that CPU, leaking a predictable value derived from an earlier TIME_WAIT socket state. Attackers who influence traffic on the target CPU can therefore infer the ISN used for a subsequent connection request.

Root Cause

The root cause is unsafe state sharing across independent packets. Multiple drop paths sit between the write and the read, including the min_ttl and min_hopcount check, the xfrm policy check, tcp_inbound_hash() MD5/AO mismatches, tcp_filter() eBPF and SO_ATTACH_FILTER drops, the th->syn && th->fin discard inside tcp_rcv_state_process() under TCP_LISTEN, psp_sk_rx_policy_check() in tcp_v{4,6}_do_rcv(), tcp_checksum_complete() failures, and tcp_v{4,6}_cookie_check() returning NULL. Any of these drops leaves tcp_tw_isn populated for the next SYN on the same CPU.

Attack Vector

An unauthenticated remote attacker sends crafted TCP traffic that traverses one of the affected drop paths, seeding the per-CPU slot with a known TIME_WAIT-derived ISN. The attacker then follows with a SYN that reaches tcp_conn_request() on the same CPU and consumes the stale value. Predictable ISNs enable off-path TCP spoofing, blind injection into new connections, and hijacking scenarios against services that rely on ISN randomness for session integrity.

The upstream fix moves tcp_tw_isn back to skb->cb[], binding the value to the specific packet that produced it and eliminating cross-packet leakage. The patch adds four bytes to tcp_v4_rcv and tcp_v6_rcv and reduces tcp_conn_request by fifteen bytes.

Detection Methods for CVE-2026-64024

Indicators of Compromise

  • Unexpected TCP RST or duplicate SYN-ACK patterns on listening sockets that correlate with high volumes of dropped inbound SYNs
  • Successful TCP connections that appear to originate from spoofed source addresses
  • Elevated counters for LINUX_MIB_TCPMD5FAILURE, LINUX_MIB_TCPMINTTLDROP, or XFRM policy drops preceding suspicious connection establishment

Detection Strategies

  • Compare running kernel versions against the fixed commits 1bbf0ced1d9db73ac7893c2187f3459288603e0d, 4affe063fa56c880cbea8d0bfded0bb80751579d, and e47f7060eaf60894e3e4d0e3c4fe6e1f2eacfbdd in the stable tree
  • Monitor /proc/net/netstat and nstat for spikes in SYN drop counters that could indicate probing of the vulnerable code paths
  • Correlate host-level TCP drop telemetry with network IDS alerts for TCP session anomalies such as out-of-window segments

Monitoring Recommendations

  • Enable kernel tracepoints on tcp:tcp_receive_reset and tcp:tcp_bad_csum to surface abnormal receive-path activity
  • Baseline expected TCP handshake behavior per host and alert on statistically anomalous ISN reuse or connection spoofing indicators
  • Ingest kernel version, patch level, and TCP MIB counters into a central data lake for fleet-wide detection queries

How to Mitigate CVE-2026-64024

Immediate Actions Required

Patch Information

The fix removes the per-CPU tcp_tw_isn variable and restores the value inside the per-skb control block. tcp_v4_fill_cb() and tcp_v6_fill_cb() do not initialize the field, so the value now travels with the packet that produced it. Overall code size change is negligible per scripts/bloat-o-meter output.

Workarounds

  • Disable TCP MD5, AO, and BPF socket filters where feasible to reduce the number of drop paths that populate the stale ISN, understanding this weakens other protections
  • Deploy strict ingress filtering and anti-spoofing ACLs to limit an attacker's ability to inject crafted SYN traffic
  • Restrict min_ttl and min_hopcount configuration changes that increase drop-path frequency until the kernel patch is applied
bash
# Verify running kernel and confirm patch inclusion
uname -r
grep -E 'tcp_tw_isn' /proc/kallsyms || echo 'symbol removed - likely patched'

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.