In the Linux kernel, the following vulnerability has been resolved:
fork: defer linking file vma until vma is fully initialized
Thorvald reported a WARNING [1]. And the root cause is below race:
CPU 1 CPU 2 fork hugetlbfs_fallocate dup_mmap hugetlbfs_punch_hole i_mmap_lock_write(mapping); vma_interval_tree_insert_after -- Child vma is visible through i_mmap tree. i_mmap_unlock_write(mapping); hugetlb_dup_vma_private -- Clear vma_lock outside i_mmap_rwsem! i_mmap_lock_write(mapping); hugetlb_vmdelete_list vma_interval_tree_foreach hugetlb_vma_trylock_write -- Vma_lock is cleared. tmp->vm_ops->open -- Alloc new vma_lock outside i_mmap_rwsem! hugetlb_vma_unlock_write -- Vma_lock is assigned!!! i_mmap_unlock_write(mapping);
hugetlb_dup_vma_private() and hugetlb_vm_op_open() are called outside i_mmap_rwsem lock while vma lock can be used in the same time. Fix this by deferring linking file vma until vma is fully initialized. Those vmas should be initialized first before they can be used.
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-cross-headersUpgrade kernel-tools-libs-develUpgrade kernel-debug-coreUpgrade kernel-64k-modules-coreUpgrade libperfUpgrade kernel-64k-debug-modules-coreUpgrade kernel-rt-debugUpgrade perfUpgrade kernel-debug-develUpgrade python3-perfUpgrade kernel-64k-modules-extraUpgrade kernel-modules-coreUpgrade kernel-64k-debug-modulesUpgrade kernel-64k-debug-coreUpgrade kernel-64k-debug-develUpgrade kernel-zfcpdump-develUpgrade kernelUpgrade kernel-devel-matchedUpgrade kernel-rt-modules-extraUpgrade kernel-debug-uki-virtUpgrade bpftoolUpgrade kernel-debugUpgrade kernel-develUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-rt-debug-develUpgrade kernel-rt-develUpgrade kernel-rt-coreUpgrade rtlaUpgrade kernel-coreUpgrade kernel-64k-debug-modules-extraUpgrade rvUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-64k-coreUpgrade kernel-zfcpdump-coreUpgrade kernel-debug-modulesUpgrade kernel-modulesUpgrade kernel-64k-develUpgrade kernel-docUpgrade kernel-rtUpgrade kernel-uki-virtUpgrade kernel-debug-modules-coreUpgrade kernel-rt-debug-coreUpgrade kernel-toolsUpgrade kernel-debug-modules-extraUpgrade kernel-64k-devel-matchedUpgrade kernel-rt-debug-modules-coreUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-debug-modulesUpgrade kernel-rt-modules-coreUpgrade kernel-tools-libsUpgrade kernel-zfcpdumpUpgrade kernel-rt-modulesUpgrade kernel-64k-modulesUpgrade kernel-headersUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debug-devel-matchedUpgrade kernel-64kUpgrade kernel-64k-debugUpgrade kernel-modules-extraUpgrade kernel-abi-stablelists | Nov 4, 2024 | May 1, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-libbpfUpgrade kernel-tools-debuginfoUpgrade kernel-modules-extraUpgrade kernel-develUpgrade kernel-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-headersUpgrade python3-perf-debuginfoUpgrade kernel-livepatch-6.1.90-99.173Upgrade bpftoolUpgrade bpftool-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade python3-perfUpgrade perfUpgrade kernel-modules-extra-commonUpgrade kernel-tools-develUpgrade kernelUpgrade kernel-libbpf-staticUpgrade kernel-libbpf-develUpgrade kernel-toolsUpgrade perf-debuginfo | Feb 17, 2025 | May 1, 2024 |
| Debian | — | Upgrade linux | May 8, 2024 | May 1, 2024 |
| Oracle_linux | — | Upgrade kernel | Oct 16, 2024 | May 1, 2024 |
| Redhat_linux | — | Upgrade kernel-rtNo solution existsUpgrade kernel | Dec 5, 2024 | May 1, 2024 |
| Suse | — | Upgrade dtb-lgUpgrade dtb-mediatekUpgrade kernel-debug-develUpgrade dtb-qcomUpgrade kernel-64kb-livepatch-develUpgrade dtb-amdUpgrade dlm-kmp-rtUpgrade kernel-64kbUpgrade gfs2-kmp-azureUpgrade dtb-hisiliconUpgrade kernel-sourceUpgrade kernel-rt_debug-develUpgrade kernel-64kb-develUpgrade dtb-sprdUpgrade ocfs2-kmp-azureUpgrade kernel-default-optionalUpgrade kernel-rt-develUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-source-azureUpgrade dtb-alteraUpgrade kernel-symsUpgrade kernel-debugUpgrade kselftests-kmp-64kbUpgrade cluster-md-kmp-64kbUpgrade reiserfs-kmp-azureUpgrade dlm-kmp-64kbUpgrade kernel-default-baseUpgrade ocfs2-kmp-defaultUpgrade dtb-exynosUpgrade dtb-allwinnerUpgrade dtb-caviumUpgrade kernel-azure-optionalUpgrade gfs2-kmp-defaultUpgrade cluster-md-kmp-rtUpgrade kernel-64kb-extraUpgrade dtb-nvidiaUpgrade kernel-defaultUpgrade kernel-source-vanillaUpgrade reiserfs-kmp-defaultUpgrade kernel-develUpgrade kernel-devel-rtUpgrade kernel-azureUpgrade dtb-armUpgrade dtb-renesasUpgrade kernel-debug-vdsoUpgrade kernel-default-livepatch-develUpgrade kernel-64kb-optionalUpgrade kernel-default-vdsoUpgrade dtb-xilinxUpgrade cluster-md-kmp-defaultUpgrade kernel-devel-azureUpgrade kernel-default-base-rebuildUpgrade kselftests-kmp-azureUpgrade kernel-macrosUpgrade kernel-azure-develUpgrade dtb-freescaleUpgrade kernel-rt_debugUpgrade kernel-docs-htmlUpgrade kernel-docsUpgrade kernel-obs-qaUpgrade kernel-rt-vdsoUpgrade ocfs2-kmp-rtUpgrade reiserfs-kmp-64kbUpgrade kernel-syms-azureUpgrade kernel-rt-extraUpgrade kernel-kvmsmallUpgrade gfs2-kmp-rtUpgrade gfs2-kmp-64kbUpgrade kernel-kvmsmall-livepatch-develUpgrade dtb-amazonUpgrade dlm-kmp-defaultUpgrade kernel-source-rtUpgrade kernel-rtUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rt-optionalUpgrade kernel-kvmsmall-develUpgrade kernel-debug-livepatch-develUpgrade dtb-marvellUpgrade kernel-azure-vdsoUpgrade kselftests-kmp-defaultUpgrade kernel-azure-livepatch-develUpgrade dtb-amlogicUpgrade kernel-obs-buildUpgrade kernel-default-livepatchUpgrade dtb-socionextUpgrade dtb-appleUpgrade dlm-kmp-azureUpgrade kernel-default-develUpgrade kernel-rt-livepatch-develUpgrade dtb-rockchipUpgrade kernel-syms-rtUpgrade kernel-azure-extraUpgrade dtb-broadcomUpgrade kernel-zfcpdumpUpgrade reiserfs-kmp-rtUpgrade kselftests-kmp-rtUpgrade dtb-apmUpgrade kernel-default-extraUpgrade cluster-md-kmp-azureUpgrade kernel-rt_debug-vdsoUpgrade ocfs2-kmp-64kb | Jun 24, 2024 | May 1, 2024 |
| Ubuntu | — | Upgrade linux-image-kvmUpgrade linux-image-azure-fdeUpgrade linux-image-nvidia-64kUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-1008-oemUpgrade linux-image-generic-64kUpgrade linux-image-intelUpgrade linux-image-nvidiaUpgrade linux-image-oracle-64kUpgrade linux-image-6.8.0-38-genericUpgrade linux-image-gkeopUpgrade linux-image-6.8.0-1009-nvidia-64kUpgrade linux-image-genericUpgrade linux-image-azureUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.0-1009-nvidiaUpgrade linux-image-oem-24.04aUpgrade linux-image-raspiUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-6.8.0-38-generic-64kUpgrade linux-image-6.8.0-1006-gkeUpgrade linux-image-6.8.0-1008-oracle-64kUpgrade linux-image-6.8.0-1010-gcpUpgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-1008-ibmUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1002-gkeopUpgrade linux-image-6.8.0-1011-awsUpgrade linux-image-6.8.0-1007-raspiUpgrade linux-image-oracleUpgrade linux-image-6.8.0-38-lowlatency-64kUpgrade linux-image-6.8.0-1010-azureUpgrade linux-image-gkeop-6.8Upgrade linux-image-6.8.0-1008-oracleUpgrade linux-image-6.8.0-38-lowlatencyUpgrade linux-image-6.8.0-1010-azure-fdeUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-ibm-classicUpgrade linux-image-awsUpgrade linux-image-virtualUpgrade linux-image-6.8.0-1007-intelUpgrade linux-image-oem-24.04Upgrade linux-image-gkeUpgrade linux-image-ibmUpgrade linux-image-gcp | Jul 12, 2024 | May 1, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | May 1, 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