{"id":"DEBIAN-CVE-2024-41096","details":"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 =\u003e 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 ]","modified":"2026-09-15T09:02:57.663407933Z","published":"2024-07-29T16:15:04.683Z","upstream":["CVE-2024-41096"],"references":[{"type":"ADVISORY","url":"https://security-tracker.debian.org/tracker/CVE-2024-41096"}],"affected":[{"package":{"name":"linux","ecosystem":"Debian:12","purl":"pkg:deb/debian/linux?arch=source&distro=bookworm"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.1.112-1"}]}],"versions":["6.1.106-1","6.1.106-2","6.1.106-3","6.1.27-1","6.1.37-1","6.1.38-1","6.1.38-2","6.1.38-2~bpo11+1","6.1.38-3","6.1.38-4","6.1.38-4~bpo11+1","6.1.52-1","6.1.55-1","6.1.55-1~bpo11+1","6.1.64-1","6.1.66-1","6.1.67-1","6.1.69-1","6.1.69-1~bpo11+1","6.1.76-1","6.1.76-1~bpo11+1","6.1.82-1","6.1.85-1","6.1.90-1","6.1.90-1~bpo11+1","6.1.94-1","6.1.94-1~bpo11+1","6.1.98-1","6.1.99-1"],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2024-41096.json"}},{"package":{"name":"linux","ecosystem":"Debian:13","purl":"pkg:deb/debian/linux?arch=source&distro=trixie"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.9.8-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2024-41096.json"}},{"package":{"name":"linux","ecosystem":"Debian:14","purl":"pkg:deb/debian/linux?arch=source&distro=forky"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.9.8-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2024-41096.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"}]}