CVE-2024-26692: smb: Fix regression in writes when non-standard maximum write size negotiated
In the Linux kernel, the following vulnerability has been resolved:
smb: Fix regression in writes when non-standard maximum write size negotiated
The conversion to netfs in the 6.3 kernel caused a regression when maximum write size is set by the server to an unexpected value which is not a multiple of 4096 (similarly if the user overrides the maximum write size by setting mount parm "wsize", but sets it to a value that is not a multiple of 4096). When negotiated write size is not a multiple of 4096 the netfs code can skip the end of the final page when doing large sequential writes, causing data corruption.
This section of code is being rewritten/removed due to a large netfs change, but until that point (ie for the 6.3 kernel until now) we can not support non-standard maximum write sizes.
Add a warning if a user specifies a wsize on mount that is not a multiple of 4096 (and round down), also add a change where we round down the maximum write size if the server negotiates a value that is not a multiple of 4096 (we also have to check to make sure that we do not round it down to zero).
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2024-26692?
CVE-2024-26692 has a medium severity rating due to its impact on write operations in the Linux kernel.
How do I fix CVE-2024-26692?
To fix CVE-2024-26692, upgrade your Linux kernel to version 6.6.18 or later.
Which versions of the Linux kernel are affected by CVE-2024-26692?
CVE-2024-26692 affects Linux kernel versions 6.3 through 6.8-rc4.
What types of issues can CVE-2024-26692 cause?
CVE-2024-26692 can lead to unexpected behaviors during write operations due to non-standard negotiated write sizes.
Are there any workarounds for CVE-2024-26692 before applying a patch?
Currently, the recommended approach is to update the kernel, as no effective workarounds have been documented for CVE-2024-26692.