Skip to main content

Linux Kernel CVE-2026-72288

| EUVDEUVD-2026-59187 CRITICAL
2026-08-15 Linux GHSA-9726-h75p-mc3x
Critical
Disputed · 9.3 Vendor: Linux
Share

Severity by source

Sources disagree (Medium–Critical)
Vendor (Linux) PRIMARY
9.3 CRITICAL
AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
vuln.today AI
7.8 HIGH

Attacker must control a guest (PR:L) and win a multi-vCPU race (AC:H); guest-to-host UAF justifies S:C with high host C/I/A impact.

3.1 AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H
4.0 AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
SUSE
7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Red Hat
7.0 MEDIUM
qualitative

vuln.today treats the vendor’s rating as authoritative. A higher third-party CVSS (e.g. CISA-ADP) is shown for transparency but does not drive the headline severity.

CVSS VectorVendor: Linux

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

5
Analysis Generated
Aug 17, 2026 - 08:10 vuln.today
CVSS changed
Aug 17, 2026 - 06:22 NVD
9.3 (CRITICAL)
Patch available
Aug 15, 2026 - 07:20 EUVD
CVE Published
Aug 15, 2026 - 05:55 cve.org
CRITICAL 9.3
CVE Published
Aug 15, 2026 - 05:55 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

In the Linux kernel, the following vulnerability has been resolved:

KVM: arm64: vgic: Handle race between interrupt affinity change and LPI disabling

Hyunwoo Kim reports some really bad races should the following situation occur:

  • LPI-I is pending in vcpu-B's AP list
  • vcpu-A writes to vcpu-B's RD to disable its LPIs
  • vcpu-C moves I from B to C

If the last two race nicely enough, vgic_prune_ap_list() can drop the irq and AP list locks, reacquire them, and in the interval the irq has been freed. UAF follows.

The fix is two-fold:

  • Before dropping the irq and ap_list locks, take a reference on

the irq

  • Do not try to handle migration of the pending bit: there is no

expectation that this state is retained, as per the architecture

With that, we're sure that the interrupt is still around, and we safely remove it from the AP list as it has no target at this stage (unless another interrupt fires, but that's another story).

AnalysisAI

Local privilege escalation / host memory corruption in the Linux kernel's arm64 KVM vGIC subsystem allows a malicious or compromised guest VM to trigger a use-after-free by racing an LPI (Locality-specific Peripheral Interrupt) disable against an interrupt affinity migration across vCPUs. When vgic_prune_ap_list() drops and reacquires the irq and ap_list locks, a concurrent affinity change can free the interrupt out from under it, leading to a kernel UAF that can crash the host or potentially enable host-kernel code execution. This is not in CISA KEV and no public exploit identified at time of analysis; EPSS is low (0.21%, 11th percentile), consistent with a hard-to-win race rather than a turnkey exploit.

Technical ContextAI

The flaw lives in KVM's virtual Generic Interrupt Controller (vGIC) for arm64, specifically LPI handling backed by the GICv3 Interrupt Translation Service (ITS). LPIs are message-signalled interrupts whose pending state is tracked per-vCPU on an 'AP list' (active/pending list). The bug is a classic race-condition-induced use-after-free (CWE-416 via CWE-362): vgic_prune_ap_list() temporarily releases the per-irq and ap_list spinlocks; if one vCPU disables another vCPU's LPIs via its redistributor (RD) while a third vCPU migrates the same interrupt from one vCPU to another, the interrupt object can be freed during that lock gap and then dereferenced. The CPE data only identifies the affected product generically as cpe:2.3:a:linux:linux, so exact affected trees must be read from the fix commits rather than CPE. The fix takes a reference on the irq before dropping the locks and deliberately stops trying to preserve the pending bit across migration, since the architecture makes no guarantee that pending state is retained.

RemediationAI

Upstream fix available (commits and stable releases); update to a patched Linux kernel - 6.18.40 or later on the 6.18.y line, 7.1.5 or later on the 7.1.y line, or mainline 7.2-rc4 and later - via commits d19dca8194ebed371e624331c6be2cb73b562caf, b1a89d12d35a8256d2b170ced0b1c86851f3def2, and 7258770e5814f15e8308ebda82ac9acf6964ba8e (https://git.kernel.org/stable/c/d19dca8194ebed371e624331c6be2cb73b562caf and the two companion links). Because the vulnerability is only reachable through arm64 KVM guests, the most effective compensating control until you can reboot into a patched kernel is to avoid running untrusted or multi-tenant guests on affected arm64 KVM hosts, or to migrate untrusted workloads to already-patched or non-arm64 hosts; the trade-off is reduced consolidation and possible live-migration overhead. There is no runtime toggle that disables vGIC LPI handling without breaking interrupt delivery for guests, so feature-disabling is not a practical workaround, and general kernel hardening (KASLR, guest isolation) only raises the bar rather than closing the race.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

Share

CVE-2026-72288 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy