CVE-2024-26759

Severity CVSS v4.0:
Pending analysis
Type:
CWE-787 Out-of-bounds Write
Publication date:
03/04/2024
Last modified:
16/04/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> mm/swap: fix race when skipping swapcache<br /> <br /> When skipping swapcache for SWP_SYNCHRONOUS_IO, if two or more threads<br /> swapin the same entry at the same time, they get different pages (A, B). <br /> Before one thread (T0) finishes the swapin and installs page (A) to the<br /> PTE, another thread (T1) could finish swapin of page (B), swap_free the<br /> entry, then swap out the possibly modified page reusing the same entry. <br /> It breaks the pte_same check in (T0) because PTE value is unchanged,<br /> causing ABA problem. Thread (T0) will install a stalled page (A) into the<br /> PTE and cause data corruption.<br /> <br /> One possible callstack is like this:<br /> <br /> CPU0 CPU1<br /> ---- ----<br /> do_swap_page() do_swap_page() with same entry<br /> <br /> <br /> swap_read_folio()

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.15 (including) 6.1.80 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2 (including) 6.6.19 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.7.7 (excluding)
cpe:2.3:o:linux:linux_kernel:6.8:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.8:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.8:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.8:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.8:rc5:*:*:*:*:*:*