Blackfort Technology
IT-Security · Fachbeitrag18. Mai 2026·Christian Gebhardt

CVE-2026-31718: Linux ksmbd Use-After-Free Schwachstelle

Im Linux-Kernel-Subsystem ksmbd korrumpiert ein asymmetrisches Cleanup zwischen Session-Disconnect und dem Durable-Scavenger-Thread Kernel-Speicher. Der Fehler hängt am Funktionspaar __ksmbd_close_fd() und session_fd_check().

Blackfort auf LinkedIn folgen

Sicherheitsvorfälle, technische Analysen und Einblicke aus der Praxis — direkt in Ihrem LinkedIn-Feed.

Jetzt folgen →
Abstrakte Darstellung einer Speicherkorruption-Schwachstelle im Linux Kernel mit fragmentierten Speicherblöcken

Überblick: Was CVE-2026-31718 angreifbar macht

Die Schwachstelle CVE-2026-31718 betrifft den im Linux-Kernel integrierten SMB-Server ksmbd. Laut NVD-Eintrag handelt es sich um einen Use-After-Free-Fehler in der Funktion __ksmbd_close_fd(), der durch ein asymmetrisches Cleanup beim Schließen von Datei-Handles ausgelöst wird. Der ENISA-Eintrag EUVD-2026-26527 verweist auf denselben Sachverhalt und ordnet die Schwachstelle der CWE-Kategorie CWE-416 (Use After Free) zu.

Auslöser ist ein Verhalten rund um sogenannte durable file handles: Bricht eine SMB-Session ab, bleibt das zugehörige Datei-Handle für einen begrenzten Zeitraum bestehen, damit ein Client transparent reconnecten kann. Genau in diesem Fenster bleibt der Kernel-Datenpfad inkonsistent — eine Konstellation, die ein Angreifer mit Netzwerkzugriff auf den SMB-Dienst ausnutzen kann.

Kernfakten zur Schwachstelle
  • CVE-ID: CVE-2026-31718 (ENISA: EUVD-2026-26527)
  • Komponente: Linux-Kernel, Subsystem fs/smb/server (ksmbd)
  • Schwachstellentyp: CWE-416 Use-After-Free
  • CVSS 3.1 Base Score: 9.8 (Critical), Vector AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Veröffentlicht: 1. Mai 2026 · Zuletzt geändert: 17. Mai 2026 (Quelle: kernel.org)

Aus Sicht des Defenders ist relevant, dass das CVSS-Vektorprofil netzwerkbasierte Ausnutzung ohne Authentifizierung und ohne Nutzerinteraktion beschreibt — eine Kombination, die typischerweise zur unmittelbaren Patch-Pflicht führt. Ob daraus in der Praxis Remote Code Execution wird, hängt von zusätzlichen Primitiven ab, die ein Angreifer aus dem korrupten Kernel-Heap aufbauen kann. Speicherkorruption im Kernel ist jedoch grundsätzlich als hochwertiger Exploit-Ausgangspunkt zu werten.

Technische Analyse: Asymmetrisches Cleanup zwischen zwei Pfaden

Die Wurzel der Schwachstelle liegt darin, dass zwei voneinander unabhängige Cleanup-Pfade denselben Zustand teilen, aber jeweils nur einen Teil davon konsistent zurücksetzen. Der Briefing-Stand fasst dies als „asymmetrische Cleanup-Logik“ zusammen — im NVD-Eintrag wird dieselbe Beschreibung in den technischen Details verwendet.

Abstrakte Darstellung getrennter SMB-Sessions mit losgelösten Verbindungsfragmenten als Sinnbild für inkonsistentes Cleanup
SMB-Sessions hinterlassen baumelnde Lock-Einträge auf einer bereits freigegebenen Verbindungsliste.

Beim regulären Disconnect ruft ksmbd session_fd_check() auf. Diese Routine setzt fp->conn = NULL, gibt die Connection-Struktur frei und entzieht so dem File-Pointer die Bindung an die Verbindung. Was dabei nicht passiert: Die Byte-Range-Locks, die in der Liste fp->lock_list hängen, werden nicht von der ursprünglichen conn->lock_list abgehängt. Ihre smb_lock->clist-Einträge zeigen weiter in einen bereits freigegebenen Speicherbereich.

Ablauf der Ausnutzung

  1. 1Client öffnet ein durable File-Handle über eine bestehende SMB-Session und setzt Byte-Range-Locks.
  2. 2Die Session bricht ab (Disconnect, Timeout oder gezielter TCP-Reset); session_fd_check() läuft an.
  3. 3session_fd_check() setzt fp->conn = NULL und gibt die Connection-Struktur frei – die Lock-Liste bleibt verwaist.
  4. 4Der Durable Scavenger Thread läuft nach Ablauf des Timeouts und versucht über conn->lock_list aufzuräumen.
  5. 5__ksmbd_close_fd() dereferenziert smb_lock->clist auf der bereits freigegebenen conn->lock_list – Use-After-Free.
  6. 6Im günstigsten Fall folgt ein Kernel-Crash (Denial-of-Service), im ungünstigen Fall eine kontrollierte Speicherkorruption.
Bedingung für die Ausnutzbarkeit

Die Schwachstelle setzt voraus, dass ksmbd als SMB-Server aktiviert ist und für die betroffene Freigabe durable handles erlaubt sind. Klassische Linux-Distributionen verwenden in den meisten Setups weiterhin Samba (user-space). ksmbd wird typischerweise dort eingesetzt, wo SMB-Throughput im Kernel-Pfad besonders relevant ist — etwa bei NAS-Appliances, Hochleistungs-Fileservern oder Container-Storage-Backends.

Der NVD-Eintrag listet fünf Commits aus der kernel.org-History, die den Fehler über mehrere stabile Branches korrigieren. Die Patches synchronisieren die Cleanup-Pfade so, dass entweder die Locks vor der Freigabe der Connection-Struktur entfernt werden oder der Scavenger-Thread den null-gewordenen Pointer korrekt erkennt.

Betroffene Kernel-Versionen und Patch-Stand

Der NVD-Eintrag dokumentiert mehrere parallele Versionsbäume, die einen Fix erhalten haben. In der Praxis bedeutet das: Wer ksmbd nutzt, sollte den exakten Distributions-Kernel gegen die Fix-Linie abgleichen — nicht nur die obere Versionsnummer.

Kernel-ZweigBetroffene VersionsspanneStatus
6.6.x (LTS)ab 6.6.32 bis vor 6.7Fix in 6.6-stable-Linie verfügbar
6.9 – 6.12.x6.9 bis vor 6.12.83Fix ab 6.12.83
6.13 – 6.18.x6.13 bis vor 6.18.24Fix ab 6.18.24
6.19 – 7.0.x6.19 bis vor 7.0.1Fix ab 7.0.1
7.17.1-rc1Fix in -rc-Folge eingespielt
Quellenlage und Konfidenz

Diese Angaben stammen aus dem NVD-Eintrag zu CVE-2026-31718 (Quelle: kernel.org) sowie dem ENISA-Eintrag EUVD-2026-26527. Die Detailtiefe ist mittel: Der CVE-Text ist im NVD-Eintrag verkürzt vorhanden, der vollständige Patch-Text liegt in den verlinkten kernel.org-Commits. Sollten Distributionen abweichende Backports veröffentlichen, prüfen Sie ergänzend die Security-Advisories des jeweiligen Anbieters.

Ein schneller Versionscheck lässt sich auf einem laufenden System wie folgt durchführen:

Bash
# Kernel-Version und ksmbd-Status prüfen
uname -r
modinfo ksmbd 2>/dev/null | grep -E '^(filename|version|srcversion)'

# Ist der Server aktiv und lauscht auf 445/TCP?
ss -ltnp '( sport = :445 )'
systemctl is-active ksmbd 2>/dev/null

# Konfigurierte Shares und durable-handle-Optionen sichten
test -f /etc/ksmbd/ksmbd.conf && grep -nE 'durable|share' /etc/ksmbd/ksmbd.conf

Gegenmaßnahmen: Was jetzt zu tun ist

Da ksmbd ein Kernel-Modul ist, ist der einzige saubere Fix ein Kernel-Update auf eine der oben gelisteten Fix-Versionen. Für Systeme, bei denen ein Reboot kurzfristig nicht möglich ist, lassen sich die Angriffsflächen jedoch zuverlässig reduzieren.

01

Kernel patchen

Auf den von Ihrer Distribution bereitgestellten Fix-Kernel (6.6-stable, 6.12.83, 6.18.24, 7.0.1, 7.1-rc1 oder neuer) aktualisieren und mit Wartungsfenster neu starten.

02

ksmbd deaktivieren

Wo SMB nicht zwingend kernelbasiert sein muss: ksmbd-Modul entladen, das System auf Samba (user-space) umstellen und 445/TCP vom Server-LAN trennen.

03

Netzwerk-Exposure reduzieren

Zugriff auf 445/TCP auf bekannte interne Subnetze begrenzen, externe Erreichbarkeit über Perimeter-Firewall ausschließen und Zugriffe über Jump-Hosts/Privileged Access auditieren.

04

Durable Handles prüfen

In ksmbd.conf prüfen, ob durable handles für die betroffenen Shares wirklich erforderlich sind. Sind sie deaktivierbar, schließt das den konkreten Trigger-Pfad.

Empfehlung für gemanagte SMB-Server

Bevor Sie an einem zentralen Fileserver den Kernel tauschen: Snapshot der Storage-Volumes anlegen, Failover-Pfad dokumentieren und einen Recovery-Test des SMB-Mountings vorab einplanen. Kernel-Patches sind in den seltensten Fällen die Ursache für Folgeschäden — ungelöste Sessions und offene Locks beim Reboot dagegen sehr wohl.

Abstrakte Darstellung eines Software-Patches, der einen Sprung im digitalen Pfad mit einer goldenen Naht schließt
Die kernel.org-Patches schließen die asymmetrische Cleanup-Logik in fünf einzelnen Commits.

Erkennung: Anomalien rund um ksmbd identifizieren

Ein Use-After-Free im Kernel hinterlässt selten saubere Spuren — weder im SMB-Audit noch in normalen Anwendungs-Logs. Hilfreich ist daher die Beobachtung von Kernel-Symptomen und Verbindungsmustern.

journalctl / dmesg
# Kernel-Trace nach ksmbd-Bezug filtern
journalctl -k --since "7 days ago" | grep -iE 'ksmbd|use-after-free|KASAN|BUG:|general protection'

# Auffällige Wiederholungen von Session-Disconnects
journalctl -u ksmbd.service --since "24 hours ago" | grep -iE 'disconnect|durable|scavenger'

Auf Netzwerkseite ist relevant: Ein Angreifer, der den Bug gezielt triggert, erzeugt typischerweise kurzlebige SMB-Sessions mit Lock-Operationen und anschließendem abrupten Disconnect. Solche Muster lassen sich aus Flow-Daten oder SMB-Visibility-Tools ableiten.

Falsche Sicherheit durch fehlende Logs

Ein stabiler Server ohne sichtbare Kernel-Panics ist kein Beleg dafür, dass die Schwachstelle nicht ausgenutzt wurde. Use-After-Free-Primitive werden in geübten Angriffen oft so gewählt, dass sie keine Crash-Spuren erzeugen. Verlassen Sie sich nicht auf das Ausbleiben von Symptomen, sondern auf den Patch-Stand des Kernels.

Einordnung: Was Blackfort Kund:innen jetzt prüfen sollten

CVE-2026-31718 ist ein typischer Fall einer Kernel-Schwachstelle, die nicht auf eine breite Welle exponierter Internet-Systeme zielt, aber dort, wo sie sitzt, durchaus tief greift: in NAS-Appliances, High-Performance-Fileservern und Storage-Backends moderner Container-Plattformen. Genau dort, wo Wiederherstellungs- und Wartungsfenster planungsintensiv sind.

Für die Bewertung im eigenen Bestand sind drei Fragen entscheidend: Welche Hosts haben ksmbd aktiv geladen? Welche dieser Hosts bedienen Clients jenseits eines kontrollierten Management-Netzes? Und welche dieser Hosts laufen auf einer Kernel-Version, die im Fix-Korridor unten liegt?

Primärquellen
  • NVD-Eintrag „CVE-2026-31718“ (Source: kernel.org), Published 2026-05-01, Modified 2026-05-17
  • ENISA EU Vulnerability Database, Eintrag EUVD-2026-26527
  • kernel.org-Commits (verlinkt im NVD-Eintrag, fünf Patches über die Stable-Trees 6.6, 6.12, 6.18, 7.0 und 7.1-rc)

Hinweis

Die Informationen basieren auf öffentlich verfügbaren Quellen (NVD, ENISA EUVD) zum Stand des Veröffentlichungsdatums (18. Mai 2026). Technische Details können sich mit nachgereichten Distributions-Advisories oder weiteren kernel.org-Commits verfeinern. Konkrete Härtungsentscheidungen sollten am eigenen Asset-Inventar und Patch-Verfahren validiert werden.

Kontakt aufnehmen

IT-Security für Ihr Unternehmen

Blackfort Technology begleitet Unternehmen bei NIS2-Compliance, OT-Security und der Absicherung kritischer Infrastrukturen – von der Analyse bis zur Umsetzung.