CVE-2026-64578 in Linux
Zusammenfassung
von VulDB • 05.08.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
ksmbd: Validierung der Größe einer zusammengesetzten (compound) Anfrage vor dem Lesen von StructureSize2
Wenn ksmbd eine zusammengesetzte (verkettete) SMB2-Anfrage validiert, liest ksmbd_smb2_check_message() pdu->StructureSize2, ohne vorher zu prüfen, ob das zusammengesetzte Element groß genug ist, um es aufzunehmen. StructureSize2 ist ein 2-Byte-Feld an Offset 64 (__SMB2_HEADER_STRUCTURE_SIZE) vom Start jedes Elements entfernt.
Die Logik zum Durchlaufen von zusammengesetzten Anfragen garantiert lediglich, dass für das letzte Element ein vollständiger 64-Byte-SMB2-Header vorhanden ist: Wenn NextCommand gleich 0 ist, wird len auf die Anzahl der Bytes reduziert, die nach next_smb2_rcv_hdr_off verbleiben. Ein entfernter Client kann eine zusammengesetzte Anfrage erstellen, deren letztes Element genau 64 Byte groß ist, sodass das Lesen von StructureSize2 an Offset 64 um ein Byte über den Empfangspuffer hinausgeht und einen slab-out-of-bounds-Lesezugriff verursacht.
BUG: KASAN: slab-out-of-bounds in ksmbd_smb2_check_message (fs/smb/server/smb2misc.c:402) Read of size 2 at addr ffff888012ae31ac by task kworker/0:1/14 The buggy address is located 172 bytes inside of allocated 173-byte region Workqueue: ksmbd-io handle_ksmbd_work Call Trace: ... kasan_report (mm/kasan/report.c:595) ksmbd_smb2_check_message (fs/smb/server/smb2misc.c:402) handle_ksmbd_work (fs/smb/server/server.c:119) process_one_work (kernel/workqueue.c:3314) worker_thread (kernel/workqueue.c:3397) kthread (kernel/kthread.c:436) ret_from_fork (arch/x86/kernel/process.c:158) ret_from_fork_asm (arch/x86/entry/entry_64.S:245)
Verwerfen Sie jedes zusammengesetzte Element, das zu klein ist, um StructureSize2 aufzunehmen, bevor es dereferenziert wird.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.