Linux Kernel ksmbd SMB2 offset bug in response buffer
CVE-2026-31478 Published on April 22, 2026
ksmbd: replace hardcoded hdr2_len with offsetof() in smb2_calc_max_out_buf_len()
In the Linux kernel, the following vulnerability has been resolved:
ksmbd: replace hardcoded hdr2_len with offsetof() in smb2_calc_max_out_buf_len()
After this commit (e2b76ab8b5c9 "ksmbd: add support for read compound"),
response buffer management was changed to use dynamic iov array.
In the new design, smb2_calc_max_out_buf_len() expects the second
argument (hdr2_len) to be the offset of ->Buffer field in the
response structure, not a hardcoded magic number.
Fix the remaining call sites to use the correct offsetof() value.
Products Associated with CVE-2026-31478
Want to know whenever a new CVE is published for Linux Kernel? stack.watch will email you.
Affected Versions
Linux:- Version f2283680a80571ca82d710bc6ecd8f8beac67d63 and below 70b4c414889492c522b6e4331562360f49be2361 is affected.
- Version 9f297df20d93411c0b4ddad7f88ba04a7cd36e77 and below 9a7166f0ef8cbb7bb48dd05e2471d995566003f5 is affected.
- Version e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d and below c3a89e3ec1ccf64fa6a34e391e1581ebbcba8683 is affected.
- Version e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d and below 6aef1765d6807e0f027cd87f6ac973eb0879a46d is affected.
- Version e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d and below 80824c7e527b70cf9039534e60aff592e8f209d1 is affected.
- Version e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d and below 4cb537ae4f37d7d0f617815ed4bed7173fb50861 is affected.
- Version e2b76ab8b5c9327ab2dae6da05d0752eb2f4771d and below 0e55f63dd08f09651d39e1b709a91705a8a0ddcb is affected.
- Version 6.6 is affected.
- Before 6.6 is unaffected.
- Version 5.15.203, <= 5.15.* is unaffected.
- Version 6.1.168, <= 6.1.* is unaffected.
- Version 6.6.131, <= 6.6.* is unaffected.
- Version 6.12.80, <= 6.12.* is unaffected.
- Version 6.18.21, <= 6.18.* is unaffected.
- Version 6.19.11, <= 6.19.* is unaffected.
- Version 7.0, <= * is unaffected.