CVE-2026-64578

ksmbd: validate compound request size before reading StructureSize2

HIGH 8.2

En bref

Source
NVD
EPSS
EPSS 0.34 % · centile 27 ()
État
PUBLISHED
Publiée
Mise à jour
Attribuée par
Linux
Statut NVD
Received

Description

In the Linux kernel, the following vulnerability has been resolved: ksmbd: validate compound request size before reading StructureSize2 When ksmbd validates a compound (chained) SMB2 request, ksmbd_smb2_check_message() reads pdu->StructureSize2 without first checking that the compound element is large enough to contain it. StructureSize2 is a 2-byte field at offset 64 (__SMB2_HEADER_STRUCTURE_SIZE) from the start of each element. The compound-walking logic only guarantees that a full 64-byte SMB2 header is present for the trailing element: when NextCommand is 0, len is reduced to the number of bytes remaining after next_smb2_rcv_hdr_off. A remote client can craft a compound request whose last element has exactly 64 bytes, so the 2-byte StructureSize2 read at offset 64 extends one byte past the receive buffer, producing a slab-out-of-bounds read. 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) Reject any compound element that is too small to hold StructureSize2 before dereferencing it.

Références

Scores

VersionScoreVecteurÉvalué par
CVSS 3.1HIGH 8.2CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:HLinux
CVSS 3.1HIGH 8.2CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)

Références européennes

Avis du CERT-FR

Produits affectés

ProduitVersions
Linux · Linuxaffected e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 < 415d0fff0451ad7ad4caa910f2bb0f562f0fd60f ; affected e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 < 1b6740525f5af90868d557c31b496ae689c8c549 ; affected e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 < 2c307126ed8e7adddab82b8e31d962d3a2156ab1 ; affected e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 < f7550a91ab211726f59cb137523b7a9eae1ac6eb ; affected e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 < f0e337e7db67cc1c832958bbb6c4026bdceacfdb ; affected e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 < ea128f06d2fb2186f0cac0c9f3e953e4d1f5c29a
Linux · Linuxaffected 5.15 ; unaffected 0 < 5.15 ; unaffected 5.15.216 ≤ 5.15.* ; unaffected 6.1.183 ≤ 6.1.* ; unaffected 6.6.148 ≤ 6.6.* ; unaffected 6.12.101 ≤ 6.12.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD