Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-64310

CVE-2026-64310: Linux Kernel Privilege Escalation Flaw

CVE-2026-64310 is a privilege escalation vulnerability in the Linux kernel's crypto CCP driver affecting SEV ioctl handling. Improper SNP initialization could crash active VMs. This article covers technical details, impact, and fixes.

Published:

CVE-2026-64310 Overview

CVE-2026-64310 is a Linux kernel vulnerability in the AMD Cryptographic Co-Processor (CCP) driver related to Secure Encrypted Virtualization (SEV) ioctl handling. The flaw stems from sev_move_to_init_state() unnecessarily initializing Secure Nested Paging (SNP) when servicing SEV-only ioctls such as SEV_PEK_GEN, SEV_PDH_GEN, SEV_PEK_CSR, SEV_PEK_CERT_IMPORT, and SEV_PDH_CERT_EXPORT. A userspace process invoking these /dev/sev ioctls could clear MSR_VM_HSAVE_PA globally. The next VMRUN on an active Kernel-based Virtual Machine (KVM) guest could then trigger a general protection fault and crash the host.

Critical Impact

A local process with access to /dev/sev can potentially destabilize the host kernel while KVM guests are running.

Affected Products

  • Linux kernel builds including the AMD CCP driver with SEV support
  • Hosts running KVM guests on AMD platforms with SEV/SNP capability
  • Distributions shipping the pre-patch drivers/crypto/ccp/sev.c code path

Discovery Timeline

  • 2026-07-25 - CVE-2026-64310 published to NVD
  • 2026-07-25 - Last updated in NVD database

Technical Details for CVE-2026-64310

Vulnerability Analysis

The AMD Secure Encrypted Virtualization (SEV) subsystem exposes firmware commands to userspace through /dev/sev ioctls. Before executing certain commands, the kernel calls sev_move_to_init_state() to bring the platform into an initialized state. This helper initialized both SEV and SNP firmware, followed by SEV_SHUTDOWN after the command completed.

SNP initialization has a side effect on the host: it zeroes MSR_VM_HSAVE_PA on every CPU as part of preparing the SNP state. MSR_VM_HSAVE_PA holds the physical address where the CPU saves host state during a VMRUN transition. Clearing this register while KVM is running normal virtual machines leaves those guests without a valid host-save area.

When a subsequent VMRUN executes for a running guest, the CPU raises a general protection fault. This fault occurs in host context and can panic the kernel. Ioctls affected include SEV_PEK_GEN, SEV_PDH_GEN, SEV_PEK_CSR, SEV_PEK_CERT_IMPORT, and SEV_PDH_CERT_EXPORT, none of which require SNP.

Root Cause

The root cause is scope mismatch in initialization. sev_move_to_init_state() initialized SNP firmware for operations that only require SEV firmware. The SNP initialization path unconditionally clears MSR_VM_HSAVE_PA, disrupting KVM guests that rely on this register for the VMRUN state save.

A secondary defect: the previous code discarded the underlying firmware error and returned a hardcoded INVALID_PLATFORM_STATE, obscuring real failure conditions from userspace callers.

Attack Vector

A local user or process with permission to open /dev/sev can issue any of the affected ioctls. If SEV initialization fails while KVM guests are active, the SNP initialization side effect zeros MSR_VM_HSAVE_PA. The next guest VMRUN faults, potentially crashing the host. This is a local denial-of-service condition against the hypervisor.

No verified proof-of-concept code is publicly available. See the upstream commits linked below for the technical fix details.

Detection Methods for CVE-2026-64310

Indicators of Compromise

  • Unexpected host kernel panics or general protection faults referencing VMRUN or SVM code paths on AMD hosts running KVM
  • Kernel log entries showing SEV firmware errors followed by KVM guest crashes
  • Processes with no legitimate SEV management role opening /dev/sev and issuing SEV_PEK_GEN, SEV_PDH_GEN, SEV_PEK_CSR, SEV_PEK_CERT_IMPORT, or SEV_PDH_CERT_EXPORT

Detection Strategies

  • Audit /dev/sev access using Linux Audit rules on the device node to log which UIDs and processes invoke SEV ioctls
  • Correlate SEV ioctl activity with subsequent KVM guest crashes or host GPFs within short time windows
  • Track kernel version and patch state across AMD KVM hosts to identify unpatched systems

Monitoring Recommendations

  • Monitor dmesg and journalctl -k for ccp and sev subsystem errors on AMD hosts
  • Alert on any non-baseline user or service accessing /dev/sev
  • Watch for repeated SEV_SHUTDOWN sequences combined with KVM instability

How to Mitigate CVE-2026-64310

Immediate Actions Required

  • Apply the upstream Linux kernel patches referenced by commits 5181e88, 9e983d0, d512077, and fb1758e7
  • Restrict /dev/sev device permissions so only trusted management processes can issue SEV ioctls
  • Track distribution security advisories for backported fixes

Patch Information

The fix modifies sev_move_to_init_state() to call __sev_platform_init_locked() for SEV-only ioctls, which initializes only the SEV firmware and skips SNP initialization. Because SNP is never initialized, MSR_VM_HSAVE_PA is not cleared and running KVM guests remain stable. The patch also surfaces the underlying firmware error instead of returning a hardcoded INVALID_PLATFORM_STATE. Calling __sev_firmware_shutdown() remains safe because __sev_snp_shutdown_locked() skips SNP shutdown when SNP was never initialized.

Workarounds

  • Limit access to /dev/sev via file permissions or a Mandatory Access Control (MAC) policy such as SELinux or AppArmor until the kernel is patched
  • Avoid running SEV certificate or key management commands (SEV_PEK_GEN, SEV_PDH_GEN, SEV_PEK_CSR, SEV_PEK_CERT_IMPORT, SEV_PDH_CERT_EXPORT) on hosts with active KVM guests
  • Schedule SEV firmware operations during maintenance windows when no guests are running
bash
# Restrict /dev/sev access to a dedicated management group
sudo groupadd sev-admin
sudo chown root:sev-admin /dev/sev
sudo chmod 660 /dev/sev

# Verify installed kernel version includes the fix
uname -r

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.