Vier öffentlich verfügbare Linux-Kernel-Exploits bringen ungepatchte Hosts in Gefahr, lokale Root-Rechte zu erlangen

Vier Linux-Kernel-Lücken ermöglichen lokale Root-Rechte auf ungepatchten Hosts. Infos zu DirtyAH6, TUNderflow, PPPoEject, DiagSpill und Patches

Von künstlicher Intelligenz erzeugter Text, ohne menschliche Überprüfung veröffentlicht. KI-Transparenz

Vier öffentlich verfügbare Linux-Kernel-Exploits bringen ungepatchte Hosts in Gefahr, lokale Root-Rechte zu erlangen
Schwachstellen

Illustration mit KI erzeugt

Funktionsfähiger Exploit-Code erhöht die Dringlichkeit

Der Sicherheitsforscher Asim Manizada hat am 18. September 2026 technische Details und funktionsfähige Exploits für vier Linux-Kernel-Schwachstellen veröffentlicht, durch die sich lokale Berechtigungen bis hin zu Root-Rechten erweitern lassen.

Bei den Schwachstellen handelt es sich um DirtyAH6 (CVE-2026-80844), TUNderflow (CVE-2026-81000), PPPoEject (CVE-2026-68121) und DiagSpill (CVE-2026-74469). Jede betrifft einen anderen Teil des Netzwerk-Stacks des Kernels, doch allen vier liegt eine unsichere Speicherverwaltung in hochprivilegiertem Code zugrunde.

Manizada meldete die Schwachstellen Mitte Juli an das Linux-Kernel-Sicherheitsteam. Anschließend stimmte er sich vor der Veröffentlichung der Exploits mit den Linux-Distributionen ab, sodass die Maintainer Zeit hatten, Korrekturen bereitzustellen.

Es liegen keine Meldungen über Angriffe in freier Wildbahn vor. Der öffentlich verfügbare Code bietet Angreifern jedoch einen Ausgangspunkt, um die Techniken an ungepatchte Distributionskernel anzupassen – insbesondere auf Mehrbenutzerservern, gemeinsam genutzten Infrastrukturen und Container-Hosts.

Die veröffentlichten Exploits sind auf bestimmte Kernel-Builds zugeschnitten und können ihre Ziele zum Absturz bringen. Sie sind eher als Proof-of-Concept-Forschungswerkzeuge denn als zuverlässige Implantate einzustufen. Bei Tests konnte Manizada die zugrunde liegenden Schwachstellen jedoch erfolgreich nutzen, um Root-Shells zu erhalten.

Vier Fehler in vier Netzwerk-Subsystemen

DirtyAH6 betrifft die Implementierung des IPv6-IPsec Authentication Header. Der anfällige Code ordnet Adressen in einem IPv6-Routing-Header neu an, bevor er den Integrity Check Value berechnet oder validiert.

Das Problem entsteht, weil ipv6_rearrange_rthdr() dem Feld segments_left im Routing-Header vertraute, ohne sicherzustellen, dass es der durch hdrlen angegebenen Anzahl von Adressen entsprach. Bei einem unverarbeiteten IPv6-HDRINCL-Paket kann hdrlen eine Adresse angeben, während segments_left einen deutlich größeren Wert enthält. Wird der Wert auf 255 gesetzt, verschiebt sich ein interner Adresszeiger um 4.064 Bytes rückwärts. Dadurch entsteht ein Speicherzugriff außerhalb des gültigen Bereichs und möglicherweise ein Schreibzugriff.

TUNderflow befindet sich im virtuellen TUN/TAP-Netzwerkcode. In tun_get_user() verwendete der Kernel tun->align sowohl als Reservebereich am Anfang des Socket-Buffers als auch in einer Berechnung, die bestimmt, wie viele Paketdaten linear verbleiben sollten.

Open vSwitch kann von einem anderen Port eine übergroße Anforderung für den Reservebereich übermitteln. Überschreitet dieser Wert den nutzbaren Bereich am Anfang eines einseitigen Socket-Buffers, läuft SKB_MAX_HEAD(align) unter. Ein negativer Zwischenwert kann sich anschließend bei der Zuweisung an ein vorzeichenloses size_t umwickeln. Dadurch kann tun_alloc_skb() skb->data außerhalb des zugewiesenen Puffers positionieren.

TUNderflow hat einen CVSS-3.1-Wert von 7,8 mit dem Vektor CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.

PPPoEject betrifft PPP over Ethernet. In pppoe_sendmsg() speicherte der Kernel einen Zeiger auf einen PPPoE-Header und rief anschließend dev_hard_header() auf. Gerätespezifische Callbacks können den Anfang des Socket-Buffers vergrößern oder neu zuweisen, wodurch Zeiger in den ursprünglichen Speicher ungültig werden.

Eine auslösende Abfolge umfasst einen Sendevorgang, der in copy_from_user() blockiert, während der erste Nicht-Ethernet-Port zu einem leeren Team-Gerät hinzugefügt wird. Ein delegierter GRE-Header-Callback kann den Buffer anschließend verschieben. PPPoE schreibt später sechs Bytes über den veralteten Zeiger in den freigegebenen Speicher und erzeugt dadurch eine Use-after-free-Bedingung.

Auch PPPoEject wird nach CVSS 3.1 mit 7,8 bewertet; der Vektor lautet CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.

DiagSpill ist ein Zählerüberlauf in sctp_diag. Die Funktion sctp_assoc_add_peer() erhöht für jeden eindeutigen SCTP-Peer den 16-Bit-Wert transport_count. Beim Hinzufügen des 65.536. Transports läuft der Zähler auf null zurück.

Der SCTP-Diagnosecode reserviert anschließend anhand dieses Nullwerts einen INET_DIAG_PEERS-Payload, kopiert aber weiterhin jede Struktur aus transport_addr_list. Das Ergebnis ist ein Schreibzugriff von ungefähr 8 MiB außerhalb des Endes des Socket-Buffers. Die Korrektur lehnt neue eindeutige Peers ab, sobald transport_count U16_MAX erreicht.

DiagSpill weist mit 8,8 den höchsten Wert der vier Schwachstellen auf; der Vektor lautet CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.

Für DirtyAH6 liegt kein CVSS-v3-Wert und kein Vektor vor.

Anforderungen an den lokalen Zugriff und begrenzte Auswirkungen aus der Ferne

DirtyAH6, TUNderflow und PPPoEject setzen normalerweise voraus, dass unprivilegierte User-Namespaces aktiviert sind. Diese Funktion ermöglicht es einem gewöhnlichen Konto, innerhalb eines isolierten Namespace Root-ähnliche Fähigkeiten zu erlangen, darunter auch solche, die für den Zugriff auf ansonsten eingeschränkte Netzwerkpfade erforderlich sind.

Daher sind die drei Schwachstellen vor allem dort relevant, wo lokale Benutzer eigene Namespaces erstellen können. Durch die Deaktivierung dieser Funktion lässt sich der erwartete unprivilegierte Einstiegspunkt entfernen. Prozesse oder Container, die bereits über die erforderlichen Netzwerkadministrationsfähigkeiten verfügen, werden dadurch jedoch nicht geschützt.

DiagSpill unterscheidet sich davon. Manizada zufolge setzt die Schwachstelle weder User-Namespaces noch besondere Berechtigungen voraus. Der NVD-Vektor weist dennoch PR:L aus, was im dort verwendeten Bewertungsmodell geringe Berechtigungen voraussetzt. Der Grund für diese Abweichung ist nicht bekannt.

Die Auswirkungen aus der Ferne sind begrenzter als das Risiko lokaler Root-Rechte. DirtyAH6 kann einen IPv6-Router oder ein Gateway zum Absturz bringen, das IPv6-Datenverkehr weiterleitet und einen IPsec Authentication Header im Transportmodus hinzufügt. Manizada konnte erst nach einer gezielten Manipulation des Speichers des Ziels in einer Laborumgebung aus der Ferne Root-Rechte erlangen. Ohne eine solche Vorbereitung stufte er eine Ausnutzung als äußerst schwierig ein.

DiagSpill kann ein System aus der Ferne zum Absturz bringen, wenn die relevanten, standardmäßig deaktivierten SCTP-Optionen aktiv sind. Ein gangbarer Weg zu Root-Rechten aus der Ferne wurde selbst unter günstigen Annahmen zur Speicheranordnung nicht gefunden.

Für TUNderflow oder PPPoEject wurde kein direkter Weg zur Ausnutzung aus der Ferne gemeldet. Ein Ausbruch aus einem Container könnte über die Schwachstellen theoretisch möglich sein, wurde jedoch weder entwickelt noch demonstriert.

Vollständige Korrekturen beginnen mit bestimmten Stable-Releases

Die Linux-Kernel-Maintainer haben alle vier Fehler behoben. Die ersten gemeldeten Upstream-Stable-Releases, die den vollständigen Satz an Patches enthalten, sind:

  • 5.10.270
  • 5.15.221
  • 6.1.188
  • 6.6.157
  • 6.12.109
  • 6.18.50
  • 7.2.4

Diese Versionsnummern sollten nicht mechanisch mit den von Debian, Ubuntu, Red Hat, SUSE oder anderen Distributionen gemeldeten Kernel-Strings verglichen werden. Anbieter portieren Sicherheitspatches häufig zurück und behalten dabei ältere Versionsnummern der Basis bei.

Administratoren sollten überprüfen, ob das Kernel-Paket ihrer Distribution Korrekturen für alle vier CVEs enthält. Die genauen Bereiche anfälliger Versionen, die Paketversionen der Distributionen und die Kennungen der Herstellerhinweise sind nicht bekannt.

Für keine der vier Schwachstellen gibt es derzeit einen gemeldeten Eintrag im CISA-Katalog Known Exploited Vulnerabilities oder eine KEV-Frist zur Behebung. Das steht im Einklang mit dem Fehlen gemeldeter Angriffe, verringert jedoch nicht die durch öffentlich verfügbaren Exploit-Code entstehende Gefährdung.

Welche Systeme priorisiert werden sollten

Das Patchen sollte bei Systemen beginnen, auf denen nicht vertrauenswürdige Benutzer lokalen Code ausführen oder Namespaces erstellen können. Zu den Zielen mit hoher Priorität zählen gemeinsam genutzte Hosting-Plattformen, Forschungsserver, Entwicklungsrechner, Container-Hosts und andere Linux-Umgebungen mit mehreren Benutzern.

Höher ist die Gefährdung außerdem dort, wo die betroffenen Netzwerkfunktionen aktiv genutzt werden, darunter Open vSwitch, TUN/TAP, PPPoE, IPsec AH6, SCTP, Team-Geräte und die Verarbeitung delegierter GRE-Header.

Als vorübergehende Maßnahmen zur Risikoreduzierung können Administratoren unprivilegierte User-Namespaces deaktivieren und nicht benötigte Netzwerkfunktionen entfernen. Die Deaktivierung von IPv6 AH6, TUN/TAP, PPPoE oder SCTP kann dazu führen, dass bestimmte anfällige Pfade nicht mehr erreichbar sind.

Diese Maßnahmen sind kein Ersatz für gepatchte Kernel. Es können alternative Ausführungspfade existieren, und DiagSpill wird durch die Deaktivierung von User-Namespaces nicht behoben.

Die Überwachung sollte sich auf unerwartete Namespace-Erstellungen, neue TUN/TAP- oder SCTP-Konfigurationen, ungewöhnliche Aktivitäten bei Open vSwitch und Team-Geräten, nicht erklärbare Root-Shells sowie Kernel-Abstürze mit Bezug zu den betroffenen Subsystemen konzentrieren. Da die Proofs of Concept einen Host destabilisieren können, sind Kernel-Fehler möglicherweise ein frühes Anzeichen für Tests oder einen fehlgeschlagenen Exploit-Versuch.

KI-gestützte Forschung deckte jahrzehntealte Fehler auf

Manizada nutzte eine eigene KI-gestützte Analyse, um das Speicherverhalten des Kernels zu modellieren und die Anordnung von Objekten zu untersuchen. Die Korrektur für DirtyAH6 enthält für dieses Tool eine „Assisted-by“-Zuordnung.

Die zugrunde liegenden Programmierfehler sind schätzungsweise zwischen 10 und 21 Jahre alt. Dazu gehören ein nicht überprüftes Paketfeld, ein Integer-Unterlauf mit anschließendem Umwickeln in einen vorzeichenlosen Wert, ein veralteter Zeiger, der über eine Neuzuweisung des Buffers hinweg beibehalten wurde, sowie ein Überlauf eines 16-Bit-Zählers.

Manizada hatte im Juli außerdem die Open-vSwitch-Schwachstelle OVSwrap offengelegt. Einer der neuen Exploits verwendet eine Technik aus Dirty Frag wieder, einer separaten, von einem anderen Forscher im Mai offengelegten Linux-Kernel-Schwachstelle mit Root-Auswirkungen.

Die Zuverlässigkeit der öffentlich verfügbaren Exploits ist derzeit weiterhin begrenzt. Die bedeutendere Entwicklung besteht darin, dass Angreifer nun vollständige Ausnutzungspfade für vier privilegierte Netzwerkfehler untersuchen und diese auf weit verbreitete Distributionskernel zuschneiden können. Patches schließen diese Möglichkeit zuverlässiger als eine alleinige Eindämmung über Konfigurationen.

Auch interessant

Quellen

Dieser Artikel ist eine eigenständige Aufbereitung auf Basis der folgenden Quellen.

In diesem Artikel behandelte CVEs

Verwandte ThemenLinux-KernelKernel-ExploitRoot-RechteDirtyAH6TUNderflowPPPoEjectDiagSpill
Zurück zur Startseite