CVE-2024-27036
HighIn the Linux kernel, the following vulnerability has been resolved: cifs: Fix writeback data corruption cifs writeback doesn't correctly handle the case where cifs_extend_writeback() hits a point where it is considering an additional folio, but this would overrun the wsize - at which point it drops out of the xarray scanning loop and calls xas_pause(). The problem is that xas_pause() advances the loop counter - thereby skipping that page. What needs to happen is for xas_reset() to be called any time we decide we don't want to process the page we're looking at, but rather send the request we are building and start a new one. Fix this by copying and adapting the netfslib writepages code as a temporary measure, with cifs writeback intending to be offloaded to netfslib in the near future. This also fixes the issue with the use of filemap_get_folios_tag() causing retry of a bunch of pages which the extender already dealt with. This can be tested by creating, say, a 64K file somewhere not on cifs (otherwise copy-offload may get underfoot), mounting a cifs share with a wsize of 64000, copying the file to it and then comparing the original file and the copy: dd if=/dev/urandom of=/tmp/64K bs=64k count=1 mount //192.168.6.1/test /mnt -o user=...,pass=...,wsize=64000 cp /tmp/64K /mnt/64K cmp /tmp/64K /mnt/64K Without the fix, the cmp fails at position 64000 (or shortly thereafter).
CVSS 3.1 score
7.8
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness type
CWE-787CVE-2024-27036 is a Out-of-bounds Write vulnerability
What is Out-of-bounds Write?
The product writes data past the end or before the beginning of the intended buffer. Learn more on MITRE CWE
References
The following references provide additional information about CVE-2024-27036 including vendor advisories, patch commits, exploit details, and third-party analysis. Links are sourced from the NIST NVD database.
-
PatchKernel patch commithttps://git.kernel.org/stable/c/65f2ced695982ccd516196d0a9447d85dbe2eed5
-
PatchKernel patch commithttps://git.kernel.org/stable/c/844b4e132f57f1333dc79feaa035075a096762e4
-
PatchKernel patch commithttps://git.kernel.org/stable/c/e45deec35bf7f1f4f992a707b2d04a8c162f2240
Frequently asked questions
-
What is CVE-2024-27036?
CVE-2024-27036 is a High severity Linux kernel vulnerability with a CVSS score of 7.8 out of 10 , classified as an Out-of-bounds Write flaw (CWE-787) . CVE-2024-27036 has not been confirmed as actively exploited and is not listed in the CISA KEV catalog.
-
What is the CVSS score for CVE-2024-27036?
CVE-2024-27036 has a CVSS score of 7.8 out of 10, rated High severity (CVSS 3.1). The vector string is
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H. -
Is there a patch available for CVE-2024-27036?
No patch is currently available for CVE-2024-27036. Monitor the NIST NVD and your Linux distribution's security advisories for updates.
-
Is CVE-2024-27036 actively exploited?
No — CVE-2024-27036 has not been confirmed as actively exploited. It is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.
-
What is Out-of-bounds Write (CWE-787)?
The product writes data past the end or before the beginning of the intended buffer. View CWE-787 on MITRE CWE →