From mboxrd@z Thu Jan 1 00:00:00 1970 From: AL-KERNEL To: kernel-cve@kernelcve.org Subject: [CVE-2026-74516][IMPORTANT] KVM: SVM: Update x2APIC MSR intercepts if AVIC is inhibited while L2 is active Date: Sat, 15 Aug 2026 10:16:20 -0400 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-AL-KERNEL-CVE: CVE-2026-74516 X-AL-KERNEL-Priority: IMPORTANT X-AL-KERNEL-Severity: IMPORTANT X-AL-KERNEL-Base-Severity: IMPORTANT X-AL-KERNEL-KPANIC: YES X-AL-KERNEL-ActionableScore: 8 X-AL-KERNEL-ActionableScore-Lower: 7 X-AL-KERNEL-Commit: 6664a5aea45318f4ec156a729949b474dd6e3159 List-Id: CVE: CVE-2026-74516 Priority: IMPORTANT AL-KERNEL base severity: IMPORTANT KPANIC flag: YES Patch: KVM: SVM: Update x2APIC MSR intercepts if AVIC is inhibited while L2 is active Commit: 6664a5aea45318f4ec156a729949b474dd6e3159 Upstream patch: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=6664a5aea45318f4ec156a729949b474dd6e3159 Original CVE announcement: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-74516 Analysis date: Sat, 15 Aug 2026 10:16:20 -0400 ActionableScore: 8 ActionableScore lower bound: 7 Actionable bucket: Strong Important candidate / Actionable Moderate at minimum Manual review required: YES Summary: KVM SVM may run L1 with AVIC disabled while x2APIC MSR intercepts remain disabled, allowing a nested guest context to access host APIC state, inject interrupts, alter task priority behavior, and cause host denial of service. ====================================================================== ABOUT THIS REPORT ====================================================================== The original Linux kernel CVE announcement for CVE-2026-74516 is available here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-74516 The original announcement does not normally provide a security severity estimate, CVSS assessment, or enough information to determine whether the reported kernel bug represents a practically relevant security issue. This report was generated by AL-KERNEL, an AI-assisted Linux kernel vulnerability analysis system developed by Alexander Larkin. It combines an autonomous classifier with LLM-assisted technical analysis and a separate ActionableScore mechanism. The purpose of this report is to prioritize Linux kernel CVEs before manual review, identify cases that require prompt investigation, and support automatic closure of issues that are unlikely to have meaningful security impact. Published priority for this report: IMPORTANT Manual review required: YES A detailed explanation of the methodology and priority rules is included at the end of this message. ====================================================================== AL-KERNEL CLASSIFICATION RESULT ====================================================================== CVE-2026-74516 IMPORTANT CHECK WITH IMPACT FROM ORIG NN MODERATE Maybe valid. Check manually. Hints by AL-KERNEL: The best (paranoid) CVSS is 'AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H';CWE-284;CWE-693;CWE-269;Other CVSS 'AV:L/AC:H/PR:L/UI:N/S:C/C:L/I:L/A:H';BEST CVSS score: '8.8';DESCR 'KVM SVM can run L1 with AVIC disabled but with x2APIC MSR intercepts still disabled when AVIC is inhibited while L2 is active. This breaks the expected guest to host isolation and can let L1 read host APIC state, send arbitrary interrupts, change task priority, and cause a host denial of service. For the CVSS the PR:L is used because the attacker needs control of an L1 guest or nested virtualization workload, but does not need host administrator privileges. The issue is not directly network reachable and requires local guest execution in a KVM nested virtualization scenario. Impact includes host DoS and possible confidentiality or integrity impact through unintended APIC state access and interrupt control.';YES REQUIRES MANUAL CHECK; ,and ActionableScore result is Strong Important candidate / Actionable Moderate at minimum (with actual score 8) YES VIRT HARDWARE KPANIC KPANIC INCREASED_TO_HIGH_BASED_ON_GUESSCVSS NO NO checked ====================================================================== ACTIONABLESCORE ANALYSIS ====================================================================== ActionableScore=8 ActionableScoreLower=7 ## 1. ActionableScore * Conservative score: 7 * Paranoid score: 8 * Final recommended bucket: **Strong Important candidate / Actionable Moderate at minimum**:: ## 2. Signal breakdown * Security-boundary bypass with practical sensitive-object access: +2 KVM may allow L1 guest execution to access host x2APIC MSR state when intercepts remain disabled after AVIC inhibition. * Cross-boundary isolation/policy bypass: +1 This is a guest-to-host isolation failure, not a normal guest-local crash. * Reliable kernel crash / strong DoS: +1 The commit explicitly states that L1 can send arbitrary interrupts and trivially DoS the host. * Practical exploit chain demonstrated or strongly implied: +1 The commit includes PoC-like behavior showing host-visible spurious interrupts and WARN paths. * Confidentiality impact plausible: +1 Reading most of the host APIC state is a plausible host information exposure. * Integrity impact plausible: +1 Sending arbitrary interrupts and changing task priority can affect host interrupt behavior and scheduling state. * Availability impact realistic: +1 The availability impact is host-wide and explicitly described as trivial DoS. * Broad/default/common subsystem exposure: +1 KVM is a common virtualization subsystem, although this specific path depends on AMD SVM, AVIC, and nested virtualization. * Hard or configuration-specific trigger: -1 The vulnerable state requires nested virtualization, L2 active, AVIC initially enabled, and AVIC becoming inhibited while L2 is active. ## 3. Reachability analysis The attacker needs control of an L1 guest or nested virtualization workload, but does not need host administrator privileges. This is not directly network reachable. The path is relevant to AMD SVM KVM hosts using AVIC and nested virtualization, so exposure is configuration-dependent but realistic in virtualization environments that allow nested guests. Containers and namespaces are not the main factor here. The boundary being crossed is the VM-to-host boundary. ## 4. Severity interpretation This behaves more like an Important-class virtualization isolation issue than an ordinary Moderate DoS. There is no evidence of classic memory corruption such as UAF, OOB write, or arbitrary write. However, the patch context supports unintended host APIC state access, arbitrary interrupt injection behavior, and host DoS from guest context. The conservative view is strong host DoS with limited C/I concern. The paranoid view treats APIC state access and interrupt control as sufficient for high-impact manual review. ## 5. One-sentence report phrase KVM SVM may run L1 with AVIC disabled while x2APIC MSR intercepts remain disabled, allowing a nested guest context to access host APIC state, inject interrupts, alter task priority behavior, and cause host denial of service. ## 6. Manual review recommendation MANUAL CHECK REQUIRED This is a virtualization isolation failure with guest-to-host impact and host APIC control implications, so it should not be auto-closed even though it is not classic memory corruption. ====================================================================== UPSTREAM PATCH SUMMARY ====================================================================== Patch: KVM: SVM: Update x2APIC MSR intercepts if AVIC is inhibited while L2 is active Commit: 6664a5aea45318f4ec156a729949b474dd6e3159 Upstream URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=6664a5aea45318f4ec156a729949b474dd6e3159 Commit description: Always update x2APIC MSR intercepts for L1 when AVIC is deactivated, even if L2 is active and KVM is using a separate MSR bitmap to run L2. If AVIC is fully enabled prior to running L2, and is then inhibited while L2 is active (for a VM-scoped inhibit), then KVM will run L1 with AVIC disabled, but with x2APIC MSR intercepts disabled, i.e. will allow L1 to read most of the host's APIC state, send arbitrary interrupts, change task priority, and ultimately trivially DoS the host. E.g. sending a self-IPI in L1 on HYPERV_REENLIGHTENMENT_VECTOR, 0xee, with CONFIG_HYPERV=n in the host kernel as a "safe" PoC, yields: Spurious interrupt (vector 0xee) on CPU#425. Acked And hacking KVM to abuse kvm_set_posted_intr_wakeup_handler() to register a handler and WARN on POSTED_INTR_WAKEUP_VECTOR yields: ------------[ cut here ]------------ WARNING: arch/x86/kvm/svm/svm.c:5594 at pi_wakeup_handler+0x9/0x10 [kvm_amd], CPU#156: nested_x2apic_t/316940 CPU: 156 UID: 0 PID: 316940 Comm: nested_x2apic_t Tainted: G S U Tainted: [S]=CPU_OUT_OF_SPEC, [U]=USER Hardware name: Google Astoria-Turin/astoria, BIOS 0.20260209.0-0 02/09/2026 RIP: 0010:pi_wakeup_handler+0x9/0x10 [kvm_amd] Call Trace: sysvec_kvm_posted_intr_wakeup_ipi+0x64/0x80 asm_sysvec_kvm_posted_intr_wakeup_ipi+0x1a/0x20 RIP: 0010:vcpu_run+0x1430/0x1e40 [kvm] kvm_arch_vcpu_ioctl_run+0x2c1/0x600 [kvm] kvm_vcpu_ioctl+0x580/0x6b0 [kvm] __se_sys_ioctl+0x6d/0xb0 do_syscall_64+0x10a/0x480 entry_SYSCALL_64_after_hwframe+0x4b/0x53 RIP: 0033:0x46ff4b ---[ end trace 0000000000000000 ]--- Fixes: 091abbf ("KVM: x86: nSVM: optimize svm_set_x2apic_msr_interception") Cc: stable@vger.kernel.org Cc: Yosry Ahmed Signed-off-by: Sean Christopherson Link: https://patch.msgid.link/20260729213558.639074-1-pbonzini@redhat.com/ Signed-off-by: Paolo Bonzini Signed-off-by: Greg Kroah-Hartman Changed files: arch/x86/kvm/svm/svm.c arch/x86/kvm/svm/avic.c Diff excerpt: Not included in this email. See the upstream URL for the full patch. Full patch: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=6664a5aea45318f4ec156a729949b474dd6e3159 ====================================================================== DETAILED REPORT METHODOLOGY ====================================================================== The original Linux kernel CVE announcement for CVE-2026-74516 can be found here: https://lore.kernel.org/linux-cve-announce/?q=CVE-2026-74516 The original CVE announcement normally does not include a security-level estimate. In particular, it may not contain a CVSS assessment, an impact level, or enough information to determine whether the reported bug is a practically relevant security issue. One purpose of this parallel CVE list is to provide that missing technical and prioritization information. The original goal of the AL-KERNEL project was to prioritize Linux kernel CVE analysis automatically before manual review. The system can also help identify non-security issues that may be suitable for automatic closure. This report was generated by AL-KERNEL, an AI-assisted Linux kernel vulnerability analysis system developed by Alexander Larkin. The first analysis stage combines an autonomous classifier with additional LLM-based analysis. The autonomous classifier runs locally on a CPU and is based on a backpropagation neural network. Together, these mechanisms produce a technical vulnerability description, identify likely weakness types, estimate CVSS severity, and provide input for ActionableScore. Two CVSS estimates are retained because incomplete kernel vulnerability information often permits more than one defensible interpretation: Conservative CVSS vector: AV:L/AC:H/PR:L/UI:N/S:C/C:L/I:L/A:H The Best / paranoid CVSS vector: AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H The Best / paranoid CVSS score: 8.8 The conservative vector represents a lower-impact interpretation. The Best/paranoid vector intentionally represents a plausible upper-bound interpretation and should not automatically be treated as demonstrated real-world impact. CVSS may also need to be adjusted for a particular Linux deployment, because actual reachability, privileges, enabled kernel configuration, hardware, namespaces, exposed device nodes, and other environmental conditions can differ significantly between systems. A separate ActionableScore mechanism evaluates practical remediation urgency. Its analysis may include reachability, attack prerequisites, subsystem exposure, memory-corruption characteristics, denial-of-service reliability, and possible confidentiality, integrity, or privilege-escalation impact. Conservative ActionableScore: 7 Paranoid ActionableScore: 8 The final base severity is taken directly from the second tab-separated field of the AL-KERNEL classification result. ActionableScore does not replace or independently override that final AL-KERNEL decision, and if ActionableScore adjusted impact level of ALKERNEL, then you would see self-readable flags above like INCREASED_TO_HIGH_BASED_ON_ACTIONABLESCOREHIGHEREQTHAN7. For an AL-KERNEL result of MODERATE, this report uses the following additional presentation split: ActionableScore below 5 -> MODERATE REGULAR ActionableScore 5 or more -> MODERATE 7.0 The distinction between MODERATE REGULAR and MODERATE 7.0 makes it possible to identify Moderate issues that should receive manual analysis and fixes before lower-priority MODERATE REGULAR issues. In many cases, MODERATE REGULAR fixes may wait for a later rebase or routine update. There is one override in which MODERATE REGULAR becomes MODERATE 7.0 even when the ActionableScore is below 5. When the AL-KERNEL result contains the KPANIC flag, a MODERATE result is always presented as MODERATE 7.0. The KPANIC flag selected with few regexps without usage of AI at all, so it helps to detect cases when Kernel Crash happens and similar (to filter False-Negative results from the LLM usage). KPANIC indicates that a reliable kernel crash, kernel panic, or similarly serious kernel availability impact was identified by the classification workflow. AL-KERNEL base severity for this report: IMPORTANT KPANIC detected for this report: YES Published priority for this report (same as in Subject): IMPORTANT These results are intended to support engineering triage. They are machine-generated estimates, and cases marked for manual review should be validated by a human security engineer before final disposition. For more info read docs linked from here: https://kernelcve.org/ (and you can submit you own patch there to generate such a report for non-existant CVE-id yet). Note that in many cases this AI tool selects higher severity, than real is (means you can expect Importants instead of Moderate 7.0 or Moderates 7.0 instead of regular Moderates). If you see such cases, please use reply email interface to add additional manual analyses info to this particular CVE. And please, please, let me know when you see Lows instead of Importants or Important instead of Low (because particular for such cases I need to tune this AI tool to make it better for this one and next similar). My contact email for such notifications is alexanjelausa@gmail.com (and both send reply to CVE record itself too and see "reply" button below for howto reply).