← Übersicht

Linux-Kernel: Use-after-free im IPv4-TCP-Handshake (CVE-2026-98432)

Stand: 03.11.2026

The Hacker News berichtet über diese Lücke unter dem Titel "Linux Kernel TCP Flaw with 9.8 CVSS", Aikido am 02.11.2026 unter "Critical Linux kernel TCP vulnerability can allow remote code execution". Anthropics Exploit greift einen Server mit MPTCP-Listener an, der Fehler selbst steckt aber im normalen IPv4-TCP-Code, nicht in MPTCP. Deshalb liegt die Beschreibung unter tcp-handshake/. Dazu gehört auch das verwandte IPv6-Problem mit CALIPSO-Optionen, das einen eigenen Patch bekommt.

Im Aikido-Artikel steht in einer Zwischenüberschrift "CVE-2025-98432". Das ist ein Tippfehler, gemeint ist CVE-2026-98432. Eine eigene CVE für den IPv6-Teil gibt es bisher nicht.

Worum es geht

Beim TCP-Handshake übergibt der Kernel die IP-Optionen der Verbindungsanfrage (ireq->ireq_opt) an den neuen Socket, ohne sie zu kopieren (tcp_v4_syn_recv_sock()). Verarbeitet eine andere CPU gleichzeitig ein wiederholtes SYN für dieselbe Anfrage, baut sie daraus ein SYNACK. Wird der neue Socket in diesem Moment freigegeben, liest ip_options_build() freigegebenen Speicher (Use-after-free). Eine ähnliche Race gibt es bei der Migration von Request-Sockets, wenn net.ipv4.tcp_migrate_req=1 gesetzt ist oder ein BPF-Programm vom Typ BPF_SK_REUSEPORT_SELECT_OR_MIGRATE läuft.

Bewertung

QuelleCVSS 3.1Vektor bzw. Einstufung
Kernel-CVE-Team (CNA), NVD, Ubuntu9.8AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Ubuntu (CVSS 4.0, laut Aikido)8.3Verfügbarkeit hoch, Vertraulichkeit und Integrität niedrig
Red Hat (VEX, Version 3 vom 30.10.)8.1AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H, Important
Oracle, SUSE (laut The Hacker News)8.1wie Red Hat
Amazon (laut The Hacker News)7.0Important
Red Hat (CVE-Seite, laut Aikido am 02.11.)5.9Race schwer zu gewinnen, Absturz am wahrscheinlichsten

Der einzige Unterschied zwischen 9.8 und 8.1 ist die Angriffskomplexität. Das Kernel-CVE-Team setzt sie auf niedrig, weil der Angreifer beide Seiten der Race selbst auslöst. Red Hat setzt sie auf hoch und erwartet vor allem Abstürze, Speicherkorruption hält Red Hat nur für theoretisch möglich. Auf der CVE-Seite führt Red Hat inzwischen 5.9, die VEX-Datei vom 30.10. noch 8.1.

Ausnutzung

Welche Kernel betroffen sind

Betroffen ist jeder Kernel ab 4.4 ohne den Fix, auf dem ein Angreifer einen IPv4-TCP-Port erreicht. Gefixt sind diese stabilen Versionen:

SerieGefixt in
5.105.10.272
5.155.15.223
6.16.1.190
6.66.6.159
6.126.12.113
6.186.18.56
7.27.2.10
7.37.3

Kernel vor 4.4 (z. B. 3.10, 3.13, 4.1) enthalten den verursachenden Commit nicht. Distributionskernel mit vielen Backports können davon abweichen, deshalb zählt bei Debian, Ubuntu und Red Hat die Aussage des Herstellers, nicht die Versionsnummer.

Was vor dem Host steht, ändert die Lage nur, wenn es TCP selbst terminiert:

Debian

ReleaseKernelStatus
14 forky / sid7.2gefixt ab linux 7.2.10-1
13 trixie6.12gefixt in linux 6.12.113-1 (DSA-6568-1)
12 bookworm6.1gefixt in linux 6.1.190-1 (DLA-4841-1)
12 bookworm, linux-6.126.12gefixt in linux-6.12 6.12.113-1~deb12u1 (DLA-4850-1)
11 bullseye5.10kein Eintrag im Security-Tracker
10 buster und älter4.19kein Eintrag, Support beendet

Debian 11 bullseye fehlt im Tracker, weil Debian LTS dafür am 31.08.2026 geendet hat. Der Kernel 5.10 liegt im betroffenen Bereich, einen Fix von Debian gibt es nicht mehr. Wer Freexians ELTS nutzt, muss dort nachsehen. Dasselbe gilt für buster mit 4.19.

Die gefixten Pakete in bookworm und trixie liegen bisher nur in *-security. Der Point-Release-Stand (6.1.176-1, 6.12.107-1) ist noch verwundbar.

Ubuntu

Ubuntu stuft die Lücke als High ein (CVSS 9.8). Gefixte Kernel gibt es am 29.10. noch für kein Release.

ReleaseKernelStatus linux
26.10 stonking7.3in Arbeit (7.3.0-10.10)
26.04 LTS resolute7.0in Arbeit (7.0.0-43.43)
24.04 LTS noble6.8in Arbeit (6.8.0-149.149)
22.04 LTS jammy5.15in Arbeit (5.15.0-203.213)
20.04 LTS focal (ESM)5.4verwundbar, kein Fix
18.04 LTS bionic (ESM)4.15verwundbar, kein Fix
16.04 LTS xenial (ESM)4.4verwundbar, kein Fix
14.04 LTS trusty3.13nicht betroffen

Die Cloud-Kernel (linux-aws, linux-azure, linux-gcp, linux-oracle), FIPS-, Realtime-, Lowlatency- und HWE-Kernel haben eigene Zeilen. In 22.04 bis 26.10 sind die meisten in Arbeit, einzelne wie linux-gcp in 24.04, linux-hwe-6.17 und linux-hwe-7.0 in 24.04 oder linux-nvidia noch als verwundbar ohne Fix geführt. Den genauen Stand pro Paket zeigt die Ubuntu-CVE-Seite.

Red Hat

Red Hat stuft die Lücke als Important ein (CVSS 8.1). Stand VEX-Datei Version 3 vom 30.10.2026:

ProduktStatus
RHEL 10betroffen, kein Fix
RHEL 9betroffen, kein Fix
RHEL 8betroffen, kein Fix
RHEL 7nicht betroffen (vulnerable_code_not_present)
RHEL 6nicht betroffen (vulnerable_code_not_present)
OpenShift 4 (RHCOS 8 und 9)betroffen
OpenShift 5 (RHCOS 9)betroffen

Betroffen sind jeweils alle Kernel-Varianten, auch kernel-rt und kernel-64k. Eine Mitigation nennt Red Hat nicht: Keine verfügbare Option erfülle die Kriterien einfache Umsetzung, breite Anwendbarkeit und Stabilität.

CentOS

CentOS hat keine eigenen Advisories. Die Kernel kommen aus den RHEL-Quellen, deshalb gilt die Red-Hat-Bewertung des passenden RHEL-Release.

CentOS Linux 7.9.2009

Nach Red Hats Aussage nicht betroffen, solange der Standard-Kernel läuft.

CentOS Linux 8

Betroffen. Der Kernel 4.18 entspricht RHEL 8, und RHEL 8 ist betroffen. CentOS Linux 8 ist seit 31.12.2021 End of Life, einen Fix wird es nicht geben.

CentOS Stream 9 und 10

Betroffen, bis ein Kernel mit dem Fix erscheint. Stream ist der Entwicklungszweig von RHEL 9 und 10, eine eigene Bewertung gibt es nicht. Ob der installierte Kernel den Fix enthält, zeigt das Changelog (siehe unten).

Andere Distributionen (kurz)

Laut The Hacker News und den jeweiligen CVE-Seiten am 29.10.:

AWS

Laut AWS (zitiert von Aikido, 02.11.) ist ein gefixter Kernel mit Neustart die einzige vollständige Abhilfe. Ein Livepatch behebt die Lücke ebenfalls.

DienstStatus / Maßnahme
EC2, Lightsail (selbst verwaltet)betroffen, Kernel aktualisieren und neu starten
Amazon Linux 2sudo yum update kernel && sudo reboot
Amazon Linux 2023sudo dnf update kernel --releasever=latest && sudo reboot
EKSManaged Node Groups, Self-managed und Karpenter-Nodes auf AMI-Release v20261031 oder neuer. EKS Auto Mode ersetzt Nodes selbst.
ECS auf EC2Kernel aktualisieren und neu starten oder Instanzen aus ECS-optimiertem AMI-Release 20261031 neu aufsetzen
FargateTasks, die nach dem 01.11.2026 6:00 Uhr PDT starten, laufen auf der gefixten Plattform. Ältere Tasks ersetzen.
Bottlerocketgefixte AMIs ab 02.11. erwartet
Lambdanicht betroffen, keine öffentlichen IPv4-TCP-Ports
WAF, ALB, CLB, NLB mit TLS-Listener, CloudFront, API Gatewayreichen bei Best-Practice-Setup keine TCP-Verbindungen direkt an die Instanzen durch, AWS patcht die Infrastruktur. Instanzen dahinter trotzdem innerhalb von 30 Tagen patchen.
NLB mit TCP-Listener, Global AcceleratorPlattformversion aktualisieren, sobald gefixte Versionen da sind

Selbst prüfen

# Laufender Kernel
uname -r

# Ist MPTCP aktiv, gibt es MPTCP-Listener?
sysctl net.mptcp.enabled
ss -Mltn

# Go-Programme ab 1.24 öffnen MPTCP-Listener von selbst. Ist GODEBUG gesetzt?
tr '\0' '\n' < /proc/<PID>/environ | grep GODEBUG

# Request-Socket-Migration (Standard: 0)
sysctl net.ipv4.tcp_migrate_req

# Debian/Ubuntu: installierte Kernel-Pakete
dpkg -l 'linux-image-*' | grep '^ii'

# RHEL, CentOS Stream, Oracle Linux: steht der Fix im Changelog?
rpm -q --changelog kernel-core | grep -i 'free inet_opt and ireq_opt'

Nach dem Kernel-Update muss das System neu starten. Erst wenn uname -r die neue Version zeigt, ist der Fix aktiv. Scanner, die nur installierte Pakete auswerten (z. B. Aikidos VM-Scan), zeigen einen Host schon vor dem Neustart als gefixt an.

Was tun

  1. Gefixten Kernel einspielen und neu starten, wo es ihn gibt: Debian bookworm, trixie, forky und sid, Oracle Linux, Amazon Linux 2 und 2023 sowie Teile von SUSE. Zuerst Hosts mit Port ins Internet, auch vergessene VMs und Container-Nodes.
  2. Wer selbst Kernel baut: auf eine der gefixten Stable-Versionen aus der Tabelle oben gehen. Das Kernel-CVE-Team rät davon ab, nur den einzelnen Commit zu übernehmen.
  3. Für Ubuntu, RHEL 8 bis 10, CentOS Stream und OpenShift gibt es noch keinen Fix. Bis dahin senken die folgenden Maßnahmen das Risiko, beheben den Fehler aber nicht. AWS nennt die Firewall-Regel und das Abschalten von MPTCP als Übergangslösung. Red Hat hält keine der geprüften Maßnahmen für einfach, breit anwendbar und stabil.

Eingehende IPv4-Pakete mit IP-Optionen verwerfen

Der Fehler braucht ein SYN mit IPv4-Optionen (Record Route, Timestamp). Normaler Verkehr nutzt keine IP-Optionen, viele Router verwerfen solche Pakete ohnehin. Ein IPv4-Header ohne Optionen hat die Länge 5 (in 32-Bit-Worten), alles darüber enthält Optionen.

# nftables
nft add rule inet filter input ip hdrlength != 5 drop

# iptables: IHL (untere 4 Bit des ersten Bytes) zwischen 6 und 15
iptables -I INPUT 1 -m u32 --u32 '0>>24&0x0f=6:15' -j DROP

Die iptables-Regel ist die von AWS veröffentlichte. Für AWS Network Firewall gibt es eine gleichwertige Stateful-Regel, die strikte Regelreihenfolge braucht. Die Regel muss vor der ersten Regel stehen, die bestehende oder erlaubte Verbindungen annimmt. Auf Hosts, die Pakete weiterleiten (Kubernetes-Nodes, Router), gehört sie zusätzlich in die forward-Chain bzw. FORWARD. Gegen das Migrationsproblem hilft die Regel nur bedingt, das ist aber nur bei tcp_migrate_req=1 oder einem passenden BPF-Programm relevant.

MPTCP abschalten, wo es nicht gebraucht wird

sysctl -w net.mptcp.enabled=0
echo 'net.mptcp.enabled = 0' > /etc/sysctl.d/90-disable-mptcp.conf

Danach legt der Kernel keine neuen MPTCP-Sockets mehr an, Anwendungen fallen auf normales TCP zurück. Das nimmt Anthropics gezeigten Angriffsweg weg, behebt aber nicht den Fehler im IPv4-TCP-Code. Ob Server ohne MPTCP genauso angreifbar sind, ist offen.

Wer MPTCP systemweit braucht, kann es für Go-Programme ab 1.24 einzeln abschalten:

GODEBUG=multipathtcp=0

Das Go Security Team nennt das eine schwache Maßnahme: Ein einziger übersehener MPTCP-Listener lässt das System verwundbar. Für Go-Server ohne vorgeschalteten Load Balancer empfiehlt Aikido die Variable trotzdem bis zum Patch.

Host hinter einen separaten Load Balancer stellen

Ein Load Balancer oder Managed Service, der TCP terminiert, bevor Pakete den Kernel erreichen, nimmt den Angriffsweg aus dem Internet weg. Ein Proxy auf demselben Host zählt nicht.

tcp_migrate_req auf 0 lassen

Der Standard ist 0. Wer es auf 1 gesetzt hat, sollte es bis zum Kernel-Update zurücksetzen.

Quellen