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-coreUpgrade kernel-debugUpgrade kernel-modules-extraUpgrade kernel-debug-devel-matchedUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-modules-coreUpgrade kernel-debug-develUpgrade kernel-abi-stablelistsUpgrade perfUpgrade kernel-64k-debug-modules-extraUpgrade kernel-rt-debug-modulesUpgrade kernel-debug-coreUpgrade kernel-devel-matchedUpgrade rtlaUpgrade kernel-zfcpdumpUpgrade kernel-rt-debug-modules-extraUpgrade kernel-modulesUpgrade kernel-rt-debug-modules-coreUpgrade kernel-64k-coreUpgrade kernel-rt-modules-coreUpgrade kernel-uki-virtUpgrade kernel-rt-modulesUpgrade kernel-64k-modules-coreUpgrade kernel-docUpgrade kernel-zfcpdump-develUpgrade kernel-64k-develUpgrade libperfUpgrade kernel-debug-modules-extraUpgrade kernel-rt-debug-develUpgrade kernel-debug-modules-coreUpgrade kernel-debug-uki-virtUpgrade kernel-headersUpgrade kernel-rt-coreUpgrade kernel-rt-develUpgrade kernel-zfcpdump-devel-matchedUpgrade bpftoolUpgrade kernel-cross-headersUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-zfcpdump-modulesUpgrade kernel-tools-libsUpgrade kernel-64k-debug-develUpgrade kernel-rt-debug-coreUpgrade kernel-rt-debugUpgrade kernel-64k-modulesUpgrade python3-perfUpgrade kernelUpgrade kernel-debug-modulesUpgrade kernel-toolsUpgrade kernel-develUpgrade kernel-rtUpgrade kernel-64k-debugUpgrade kernel-64k-devel-matchedUpgrade kernel-rt-modules-extraUpgrade kernel-zfcpdump-coreUpgrade kernel-tools-libs-develUpgrade kernel-64k-debug-modules-coreUpgrade kernel-64k-debug-modulesUpgrade kernel-64k-modules-extraUpgrade kernel-64k-debug-coreUpgrade kernel-64kUpgrade rv | 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 | — | No solution existsUpgrade kernel-rtUpgrade kernel | Dec 5, 2024 | May 17, 2024 |
| Rocky_linux | — | Upgrade kernel-debug-coreUpgrade kernel-debug-debuginfoUpgrade bpftoolUpgrade kernel-debug-uki-virtUpgrade kernel-rt-coreUpgrade kernel-rt-debug-modules-coreUpgrade kernel-rt-modules-coreUpgrade kernel-zfcpdump-modules-extraUpgrade python3-perf-debuginfoUpgrade rtlaUpgrade kernel-rt-debugUpgrade kernel-rt-modulesUpgrade kernel-rt-debug-modulesUpgrade kernel-rt-debug-coreUpgrade kernel-rt-debug-kvmUpgrade kernel-debug-modules-extraUpgrade kernel-rt-debug-debuginfoUpgrade kernel-modules-extraUpgrade perf-debuginfoUpgrade kernel-debuginfoUpgrade kernel-modulesUpgrade kernel-develUpgrade bpftool-debuginfoUpgrade kernel-debug-modules-coreUpgrade kernel-zfcpdumpUpgrade kernel-rt-debug-develUpgrade kernel-debugUpgrade kernel-headersUpgrade kernel-uki-virtUpgrade kernel-rt-debuginfoUpgrade kernel-rt-debug-modules-extraUpgrade kernel-zfcpdump-develUpgrade kernel-tools-libsUpgrade kernel-debug-modulesUpgrade kernel-tools-debuginfoUpgrade kernel-coreUpgrade kernel-modules-coreUpgrade kernel-debug-develUpgrade kernel-rt-develUpgrade kernel-devel-matchedUpgrade kernel-cross-headersUpgrade kernel-rt-kvmUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-zfcpdump-coreUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-debug-devel-matchedUpgrade kernel-toolsUpgrade python3-perfUpgrade kernel-rt-modules-extraUpgrade kernel-rtUpgrade kernel-tools-libs-develUpgrade kernel-zfcpdump-modulesUpgrade perfUpgrade libperf-debuginfoUpgrade libperfUpgrade kernelUpgrade kernel-zfcpdump-debuginfoUpgrade rv | Sep 17, 2024 | May 17, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-35-genericUpgrade linux-image-6.8.0-1008-azureUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-35-lowlatencyUpgrade linux-image-gkeUpgrade linux-image-6.8.0-1005-raspiUpgrade linux-image-generic-lpaeUpgrade linux-image-generic-64kUpgrade linux-image-oem-24.04Upgrade linux-image-6.8.0-1009-awsUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-6.8.0-1006-oemUpgrade linux-image-genericUpgrade linux-image-virtualUpgrade linux-image-lowlatency-64kUpgrade linux-image-kvmUpgrade linux-image-6.8.0-1008-gcpUpgrade linux-image-6.8.0-1006-oracle-64kUpgrade linux-image-ibm-classicUpgrade linux-image-gcpUpgrade linux-image-oracleUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-1004-gkeUpgrade linux-image-azureUpgrade linux-image-oracle-64kUpgrade linux-image-6.8.0-35-generic-64kUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-35-lowlatency-64kUpgrade linux-image-raspiUpgrade linux-image-ibmUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.0-1006-oracleUpgrade linux-image-awsUpgrade linux-image-oem-24.04aUpgrade linux-image-6.8.0-1006-ibmUpgrade linux-image-6.8.0-1008-azure-fde | 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