CVE-2026-99272: smb: client: validate the data area in SMB2_read()

Published Nov 7, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

smb: client: validate the data area in SMB2read()

SMB2read() copies le32tocpu(rsp->DataLength) bytes from (char )rsp + rsp->DataOffset without checking that the range lies within the response actually received. A READ response with DataOffset == 0 makes smb2getdataarealen() zero the data length, so smb2checkmessage() accepts a frame as short as the fixed response, while SMB2read() still uses the server-supplied DataLength, capped only by CIFSMAXMSGSIZE and the caller's length.

A malicious server can answer the synchronous read used by the mfsymlinks (or SFU) symlink parser with an 81-byte READ response carrying DataOffset 0 and DataLength 1067, making the client copy 1067 bytes from a 448-byte receive object (KASAN slab-out-of-bounds; up to 16 KiB in the general case).

Clamp a zero (or header-overlapping) DataOffset to readrspsize, as handlereaddata() does for the asynchronous path, and reject the response unless DataOffset + DataLength fits within rspiov.iovlen. The SMB1 helper was fixed the same way in 5be5bdda5863.

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Compensating control

    Validate the SMB2 read response data area before copying: clamp a zero or header-overlapping DataOffset to read_rsp_size, and reject the response unless DataOffset plus DataLength fits within rsp_iov.iov_len.

Event History

Nov 7, 2026
CVE Published
via MITRE·02:08 PM
Data Sourced
via MITRE·02:08 PM
Description
Data Sourced
via NVD·02:17 PM
Description

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203