In the Linux kernel, the following vulnerability has been resolved:
mm: cachestat: fix two shmem bugs
When cachestat on shmem races with swapping and invalidation, there are two possible bugs:
1) A swapin error can have resulted in a poisoned swap entry in the shmem inode's xarray. Calling get_shadow_from_swap_cache() on it will result in an out-of-bounds access to swapper_spaces[].
Validate the entry with non_swap_entry() before going further.
2) When we find a valid swap entry in the shmem's inode, the shadow entry in the swapcache might not exist yet: swap IO is still in progress and we're before __remove_mapping; swapin, invalidation, or swapoff have removed the shadow from swapcache after we saw the shmem swap entry.
This will send a NULL to workingset_test_recent(). The latter purely operates on pointer bits, so it won't crash - node 0, memcg ID 0, eviction timestamp 0, etc. are all valid inputs - but it's a bogus test. In theory that could result in a false "recently evicted" count.
Such a false positive wouldn't be the end of the world. But for code clarity and (future) robustness, be explicit about this case.
Bail on get_shadow_from_swap_cache() returning NULL.
CVSS Details
- CVSS 3.1 Base Score: 7.1
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-rt-debug-coreUpgrade kernel-cross-headersUpgrade kernel-rt-modules-extraUpgrade kernel-zfcpdump-modulesUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rtUpgrade kernel-rt-develUpgrade kernel-64k-debugUpgrade rvUpgrade kernel-64k-debug-coreUpgrade kernel-64kUpgrade kernel-develUpgrade kernel-tools-libs-develUpgrade bpftoolUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-rt-debugUpgrade kernel-debug-modulesUpgrade kernel-64k-debug-modulesUpgrade kernel-zfcpdump-coreUpgrade kernel-64k-modules-extraUpgrade kernel-64k-debug-modules-coreUpgrade kernel-toolsUpgrade kernel-64k-devel-matchedUpgrade kernel-tools-libsUpgrade kernel-64k-modulesUpgrade kernelUpgrade kernel-64k-debug-devel-matchedUpgrade python3-perfUpgrade kernel-64k-debug-develUpgrade kernel-modules-extraUpgrade kernel-rt-debug-modules-coreUpgrade kernel-64k-coreUpgrade kernel-rt-debug-modules-extraUpgrade kernel-devel-matchedUpgrade kernel-debugUpgrade kernel-rt-modules-coreUpgrade kernel-debug-modules-coreUpgrade kernel-modules-coreUpgrade kernel-rt-coreUpgrade kernel-uki-virtUpgrade kernel-rt-debug-modulesUpgrade kernel-64k-modules-coreUpgrade rtlaUpgrade kernel-zfcpdump-develUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-64k-develUpgrade kernel-modulesUpgrade kernel-docUpgrade kernel-64k-debug-modules-extraUpgrade kernel-debug-devel-matchedUpgrade kernel-zfcpdumpUpgrade kernel-debug-uki-virtUpgrade kernel-abi-stablelistsUpgrade perfUpgrade kernel-debug-coreUpgrade libperfUpgrade kernel-debug-develUpgrade kernel-debug-modules-extraUpgrade kernel-rt-debug-develUpgrade kernel-coreUpgrade kernel-rt-modulesUpgrade kernel-headers | Nov 4, 2024 | May 17, 2024 |
| Debian | — | Upgrade linux | Jul 27, 2026 | Jul 27, 2026 |
| Oracle_linux | — | Upgrade kernel | Oct 16, 2024 | May 17, 2024 |
| Redhat_linux | — | Upgrade kernel-rtNo solution existsUpgrade kernel | Dec 5, 2024 | May 17, 2024 |
| Rocky_linux | — | Upgrade kernel-rt-kvmUpgrade kernel-debug-devel-matchedUpgrade kernel-rt-modules-extraUpgrade python3-perfUpgrade kernel-rtUpgrade kernel-zfcpdump-devel-matchedUpgrade perfUpgrade libperfUpgrade kernelUpgrade kernel-cross-headersUpgrade kernel-zfcpdump-debuginfoUpgrade libperf-debuginfoUpgrade kernel-toolsUpgrade kernel-tools-libs-develUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-zfcpdump-modulesUpgrade rvUpgrade kernel-devel-matchedUpgrade kernel-zfcpdump-coreUpgrade kernel-uki-virtUpgrade kernel-rt-modulesUpgrade kernel-rt-debug-develUpgrade kernel-rt-debug-coreUpgrade kernel-develUpgrade kernel-debug-modules-extraUpgrade kernel-debug-modules-coreUpgrade bpftool-debuginfoUpgrade kernel-zfcpdumpUpgrade kernel-zfcpdump-develUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debug-develUpgrade kernel-rt-debug-modulesUpgrade kernel-rt-debug-kvmUpgrade kernel-rt-debugUpgrade kernel-rt-debug-debuginfoUpgrade kernel-headersUpgrade kernel-debuginfoUpgrade kernel-modulesUpgrade kernel-debug-coreUpgrade bpftoolUpgrade rtlaUpgrade python3-perf-debuginfoUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-rt-modules-coreUpgrade kernel-rt-debug-modules-coreUpgrade kernel-rt-coreUpgrade kernel-debug-uki-virtUpgrade kernel-debug-debuginfoUpgrade kernel-rt-debuginfoUpgrade kernel-debug-modulesUpgrade kernel-coreUpgrade kernel-debugUpgrade kernel-rt-develUpgrade kernel-tools-debuginfoUpgrade kernel-modules-extraUpgrade kernel-tools-libsUpgrade kernel-modules-coreUpgrade perf-debuginfo | Sep 17, 2024 | May 17, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1006-oemUpgrade linux-image-genericUpgrade linux-image-6.8.0-1009-awsUpgrade linux-image-lowlatency-64kUpgrade linux-image-6.8.0-35-lowlatencyUpgrade linux-image-6.8.0-1008-azureUpgrade linux-image-oem-24.04Upgrade linux-image-6.8.0-35-genericUpgrade linux-image-generic-64kUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-lowlatencyUpgrade linux-image-gkeUpgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-1005-raspiUpgrade linux-image-virtualUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-1004-gkeUpgrade linux-image-6.8.0-1006-ibmUpgrade linux-image-ibm-classicUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-kvmUpgrade linux-image-awsUpgrade linux-image-6.8.0-35-generic-64kUpgrade linux-image-raspiUpgrade linux-image-6.8.0-1008-azure-fdeUpgrade linux-image-azureUpgrade linux-image-oracle-64kUpgrade linux-image-6.8.0-1006-oracle-64kUpgrade linux-image-6.8.0-35-lowlatency-64kUpgrade linux-image-azure-fdeUpgrade linux-image-oracleUpgrade linux-image-6.8.0-1006-oracleUpgrade linux-image-6.8.0-1008-gcpUpgrade linux-image-gcpUpgrade linux-image-oem-24.04aUpgrade linux-image-ibmUpgrade linux-image-generic-64k-hwe-24.04 | Jul 1, 2024 | May 17, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub