In the Linux kernel, the following vulnerability has been resolved:
PCI/MSI: Fix UAF in msi_capability_init
KFENCE reports the following UAF:
BUG: KFENCE: use-after-free read in __pci_enable_msi_range+0x2c0/0x488
Use-after-free read at 0x0000000024629571 (in kfence-#12): __pci_enable_msi_range+0x2c0/0x488 pci_alloc_irq_vectors_affinity+0xec/0x14c pci_alloc_irq_vectors+0x18/0x28
kfence-#12: 0x0000000008614900-0x00000000e06c228d, size=104, cache=kmalloc-128
allocated by task 81 on cpu 7 at 10.808142s: __kmem_cache_alloc_node+0x1f0/0x2bc kmalloc_trace+0x44/0x138 msi_alloc_desc+0x3c/0x9c msi_domain_insert_msi_desc+0x30/0x78 msi_setup_msi_desc+0x13c/0x184 __pci_enable_msi_range+0x258/0x488 pci_alloc_irq_vectors_affinity+0xec/0x14c pci_alloc_irq_vectors+0x18/0x28
freed by task 81 on cpu 7 at 10.811436s: msi_domain_free_descs+0xd4/0x10c msi_domain_free_locked.part.0+0xc0/0x1d8 msi_domain_alloc_irqs_all_locked+0xb4/0xbc pci_msi_setup_msi_irqs+0x30/0x4c __pci_enable_msi_range+0x2a8/0x488 pci_alloc_irq_vectors_affinity+0xec/0x14c pci_alloc_irq_vectors+0x18/0x28
Descriptor allocation done in: __pci_enable_msi_range msi_capability_init msi_setup_msi_desc msi_insert_msi_desc msi_domain_insert_msi_desc msi_alloc_desc ...
Freed in case of failure in __msi_domain_alloc_locked() __pci_enable_msi_range msi_capability_init pci_msi_setup_msi_irqs msi_domain_alloc_irqs_all_locked msi_domain_alloc_locked __msi_domain_alloc_locked => fails msi_domain_free_locked ...
That failure propagates back to pci_msi_setup_msi_irqs() in msi_capability_init() which accesses the descriptor for unmasking in the error exit path.
Cure it by copying the descriptor and using the copy for the error exit path unmask operation.
[ tglx: Massaged change log ]
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-64k-devel-matchedUpgrade kernel-zfcpdump-modulesUpgrade kernel-rtUpgrade kernel-abi-stablelistsUpgrade kernel-64k-debugUpgrade kernel-rt-debug-modules-coreUpgrade kernel-toolsUpgrade kernel-debug-modules-extraUpgrade kernel-rt-modulesUpgrade kernel-cross-headersUpgrade kernel-debug-devel-matchedUpgrade kernel-devel-matchedUpgrade kernel-64k-debug-coreUpgrade rvUpgrade kernel-rt-modules-extraUpgrade kernel-rt-debug-modules-extraUpgrade kernel-zfcpdump-coreUpgrade kernel-headersUpgrade kernel-docUpgrade libperfUpgrade kernel-modules-coreUpgrade kernel-tools-libs-develUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-64k-debug-modules-extraUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-64k-coreUpgrade kernel-rt-modules-coreUpgrade kernel-rt-debug-coreUpgrade kernel-tools-libsUpgrade kernel-debug-develUpgrade kernel-debug-modulesUpgrade kernel-debug-modules-coreUpgrade kernel-uki-virtUpgrade kernel-64k-modulesUpgrade kernel-rt-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-64k-debug-modules-coreUpgrade kernel-modules-extraUpgrade rtlaUpgrade kernel-64k-debug-develUpgrade kernel-coreUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-develUpgrade python3-perfUpgrade kernel-64k-modules-extraUpgrade kernel-64k-modules-coreUpgrade bpftoolUpgrade kernel-rt-debugUpgrade kernel-zfcpdumpUpgrade kernel-debugUpgrade kernel-64k-debug-modulesUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-zfcpdump-develUpgrade kernel-rt-develUpgrade kernel-modulesUpgrade kernelUpgrade kernel-debug-uki-virtUpgrade perfUpgrade kernel-64kUpgrade kernel-rt-debug-develUpgrade kernel-debug-coreUpgrade kernel-64k-devel | Nov 4, 2024 | Jul 29, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-libbpfUpgrade python3-perfUpgrade kernel-modules-extraUpgrade perf-debuginfoUpgrade kernel-tools-develUpgrade kernel-debuginfoUpgrade kernel-tools-debuginfoUpgrade perfUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-livepatch-6.1.109-118.189Upgrade kernel-headersUpgrade kernel-modules-extra-commonUpgrade kernel-toolsUpgrade python3-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-libbpf-staticUpgrade kernel-libbpf-develUpgrade kernel-develUpgrade kernel-debuginfo-common-x86_64Upgrade kernelUpgrade bpftool | Feb 17, 2025 | Jul 29, 2024 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Oct 7, 2024 | Jul 29, 2024 |
| Oracle_linux | — | Upgrade kernel | Oct 16, 2024 | Jul 29, 2024 |
| Redhat_linux | — | Upgrade kernelUpgrade kernel-rt | Dec 5, 2024 | Jul 29, 2024 |
| Rocky_linux | — | Upgrade python3-perf-debuginfoUpgrade kernel-rt-debug-modulesUpgrade kernel-modules-extraUpgrade kernel-zfcpdump-debuginfoUpgrade rtlaUpgrade kernel-rt-develUpgrade kernel-zfcpdump-modules-extraUpgrade bpftoolUpgrade perf-debuginfoUpgrade perfUpgrade kernel-debugUpgrade kernel-tools-libsUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-coreUpgrade kernel-modulesUpgrade kernel-debug-develUpgrade kernel-debug-uki-virtUpgrade kernel-uki-virtUpgrade kernel-develUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-kvmUpgrade kernel-tools-debuginfoUpgrade kernel-rt-debug-modules-coreUpgrade kernel-debuginfoUpgrade kernel-rt-coreUpgrade kernel-rt-debug-modules-extraUpgrade python3-perfUpgrade kernel-debug-coreUpgrade kernel-rt-debugUpgrade rvUpgrade kernel-rt-debug-kvmUpgrade kernel-rt-modules-extraUpgrade kernel-rt-debuginfoUpgrade kernel-debug-debuginfoUpgrade kernel-debug-modules-extraUpgrade kernel-zfcpdumpUpgrade kernel-rtUpgrade kernel-rt-modules-coreUpgrade kernel-zfcpdump-develUpgrade kernelUpgrade kernel-debug-modules-coreUpgrade kernel-debug-devel-matchedUpgrade kernel-zfcpdump-coreUpgrade libperf-debuginfoUpgrade kernel-headersUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-cross-headersUpgrade kernel-debug-modulesUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-modulesUpgrade kernel-tools-libs-develUpgrade kernel-rt-debug-coreUpgrade kernel-modules-coreUpgrade kernel-toolsUpgrade kernel-rt-debug-develUpgrade kernel-devel-matchedUpgrade bpftool-debuginfoUpgrade libperf | Sep 17, 2024 | Jul 29, 2024 |
| Suse | — | Upgrade kernel-syms-azureUpgrade dtb-apmUpgrade kselftests-kmp-64kbUpgrade kernel-64kb-livepatch-develUpgrade ocfs2-kmp-64kbUpgrade dtb-lgUpgrade dtb-xilinxUpgrade gfs2-kmp-64kbUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-rt-develUpgrade kernel-source-azureUpgrade dtb-freescaleUpgrade kernel-default-develUpgrade kernel-rt-optionalUpgrade kernel-default-optionalUpgrade ocfs2-kmp-rtUpgrade kernel-develUpgrade kernel-obs-qaUpgrade dtb-caviumUpgrade kernel-symsUpgrade dtb-broadcomUpgrade kernel-64kb-develUpgrade kernel-default-base-rebuildUpgrade kernel-sourceUpgrade dtb-exynosUpgrade kernel-default-vdsoUpgrade dtb-qcomUpgrade kernel-azure-develUpgrade cluster-md-kmp-rtUpgrade kernel-azure-extraUpgrade kselftests-kmp-azureUpgrade kernel-macrosUpgrade gfs2-kmp-azureUpgrade kernel-kvmsmall-develUpgrade dtb-alteraUpgrade cluster-md-kmp-azureUpgrade kernel-64kbUpgrade gfs2-kmp-rtUpgrade dlm-kmp-64kbUpgrade dtb-amlogicUpgrade kernel-docs-htmlUpgrade kernel-64kb-optionalUpgrade kernel-kvmsmallUpgrade ocfs2-kmp-defaultUpgrade kernel-rt_debug-develUpgrade kernel-azure-livepatch-develUpgrade kernel-zfcpdumpUpgrade dtb-amazonUpgrade kernel-devel-azureUpgrade kernel-default-extraUpgrade kernel-source-rtUpgrade kernel-default-livepatchUpgrade kernel-rtUpgrade kernel-azure-optionalUpgrade reiserfs-kmp-64kbUpgrade ocfs2-kmp-azureUpgrade reiserfs-kmp-defaultUpgrade kernel-debug-develUpgrade kernel-docsUpgrade kernel-debugUpgrade dtb-appleUpgrade kernel-default-livepatch-develUpgrade dtb-nvidiaUpgrade kernel-azure-vdsoUpgrade gfs2-kmp-defaultUpgrade dtb-socionextUpgrade dtb-armUpgrade dtb-hisiliconUpgrade kernel-source-vanillaUpgrade dtb-marvellUpgrade dlm-kmp-rtUpgrade dlm-kmp-defaultUpgrade kselftests-kmp-defaultUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rt-vdsoUpgrade kernel-default-baseUpgrade kernel-azureUpgrade kernel-devel-rtUpgrade kernel-rt_debugUpgrade kernel-rt-livepatch-develUpgrade kernel-debug-livepatch-develUpgrade dtb-amdUpgrade cluster-md-kmp-64kbUpgrade kernel-syms-rtUpgrade kselftests-kmp-rtUpgrade kernel-rt-extraUpgrade kernel-obs-buildUpgrade kernel-defaultUpgrade dtb-rockchipUpgrade dlm-kmp-azureUpgrade cluster-md-kmp-defaultUpgrade dtb-allwinnerUpgrade reiserfs-kmp-azureUpgrade kernel-debug-vdsoUpgrade kernel-64kb-extraUpgrade dtb-mediatekUpgrade dtb-sprdUpgrade kernel-rt_debug-livepatch-develUpgrade dtb-renesasUpgrade kernel-rt_debug-vdsoUpgrade reiserfs-kmp-rt | Dec 5, 2025 | Sep 12, 2024 |
| Ubuntu | — | Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.8.0-48-lowlatencyUpgrade linux-image-nvidia-6.8Upgrade linux-image-gkeUpgrade linux-image-oem-22.04aUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-oem-22.04Upgrade linux-image-raspiUpgrade linux-image-gkeop-6.8Upgrade linux-image-6.8.0-1015-oracleUpgrade linux-image-6.8.0-1016-gcpUpgrade linux-image-ibmUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-nvidiaUpgrade linux-image-lowlatency-64kUpgrade linux-image-gkeopUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1013-gkeUpgrade linux-image-6.8.0-1017-nvidiaUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-oem-24.04Upgrade linux-image-generic-64kUpgrade linux-image-oracleUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-genericUpgrade linux-image-6.8.0-48-generic-64kUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-1017-nvidia-lowlatency-64kUpgrade linux-image-generic-lpaeUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.8.0-1014-raspiUpgrade linux-image-oem-24.04aUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.0-1018-awsUpgrade linux-image-6.8.0-1016-azure-fdeUpgrade linux-image-6.8.0-48-lowlatency-64kUpgrade linux-image-6.8.0-1016-oemUpgrade linux-image-oem-22.04dUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-ibm-classicUpgrade linux-image-oem-22.04bUpgrade linux-image-virtualUpgrade linux-image-6.8.0-1017-nvidia-64kUpgrade linux-image-azure-fdeUpgrade linux-image-oem-22.04cUpgrade linux-image-6.8.0-1014-ibmUpgrade linux-image-6.8.0-1017-nvidia-lowlatencyUpgrade linux-image-6.8.0-1017-gcpUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-6.8.0-1015-oracle-64kUpgrade linux-image-kvmUpgrade linux-image-6.8.0-48-genericUpgrade linux-image-azureUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-awsUpgrade linux-image-6.8.0-1002-gkeopUpgrade linux-image-nvidia-64kUpgrade linux-image-6.8.0-1016-azureUpgrade linux-image-6.8.0-1017-azure-fdeUpgrade linux-image-6.8.0-1017-azureUpgrade linux-image-oracle-64kUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-gcp | Nov 4, 2024 | Jul 29, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Jul 29, 2024 |
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