LiveActive security incident?Get immediate response
CVE Record

CVE-2024-41096: PCI/MSI: Fix UAF in msi_capability_init

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 ]

HighCVSS 7.8Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

A Linux kernel error path can access memory after it has been freed while configuring PCI Message Signaled Interrupts. The supplied CVSS assessment indicates a local, low-privileged attacker could potentially affect confidentiality, integrity, and availability. The sources do not demonstrate a working exploit or remote attack path.

Executive priority

Treat this as high-priority kernel maintenance, particularly for shared or locally accessible Linux hosts using PCI devices. The supplied evidence does not justify declaring a remote or actively exploited emergency. Expedite vendor-supported updates through established testing and reboot procedures.

Technical view

When MSI-domain interrupt allocation fails, cleanup frees an MSI descriptor. The error path in msi_capability_init then reads that descriptor while unmasking, producing a use-after-free detected by KFENCE. The upstream correction copies the descriptor beforehand and uses the copy during cleanup. CVSS 3.1 rates the issue 7.8.

Likely exposure

Exposure concerns Linux systems running versions identified as affected by the supplied record and reaching PCI MSI initialization when interrupt allocation fails. CVSS classifies access as local with low privileges. Exact distribution package mappings, hardware dependencies, and configuration requirements are not supplied, so organizations must confirm exposure through their Linux vendor.

Exploitation context

The source bundle marks KEV false, and no supplied source reports active exploitation. CVSS assumes local access, low complexity, low privileges, and no user interaction. These are scoring assumptions, not evidence that practical exploitation has been demonstrated.

Researcher notes

KFENCE observed a use-after-free read after MSI allocation failure freed the descriptor later accessed by cleanup. The root cause and correction are well described, but the bundle does not establish practical exploitation, affected configuration breadth, distribution package boundaries, or a CWE classification. The repeated commit identifier and ambiguous version entry warrant vendor-specific verification.

Mitigation direction

  • Install a vendor-supported kernel release incorporating the applicable upstream correction.
  • Check distribution security guidance for corrected package versions and required reboot instructions.
  • Prioritize shared systems where untrusted users have local accounts or execute workloads.
  • Apply normal kernel compatibility testing before broad production deployment.

Validation and detection

  • Inventory running kernel versions and compare them with current distribution advisories.
  • Confirm the installed kernel source or changelog includes the applicable upstream correction.
  • Reboot updated systems and verify the corrected kernel is running.
  • Exercise PCI MSI initialization and failure handling in a non-production, instrumented environment.
Prepared
Confidence
medium
Sources
7

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2024-41096 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
7.8 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
3Timeline events
2ADP providers
6Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: partial

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
7.8CVSS 3.1HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H1.85.9Linux

Vulnerability scoring details

Base CVSS 3.1 score

7.8High
CVSS 3.1 vector shape for CVE-2024-41096Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CVECVE Program Container
CISA-ADPCISA ADP Vulnrichment
other:ssvc
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinuxbf6e054e0e3fbc9614355b760e18c8a14f952a4e, bf6e054e0e3fbc9614355b760e18c8a14f952a4e, bf6e054e0e3fbc9614355b760e18c8a14f952a4e, bf6e054e0e3fbc9614355b760e18c8a14f952a4eunaffected
LinuxLinux5.17, 0, 6.1.109, 6.6.37, 6.9.8, 6.10affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.