CVE-2026-64307: crypto: ccp - Do not initialize SNP for ioctl(SNP_CONFIG)

Published Jul 25, 2026
·
Updated

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

crypto: ccp - Do not initialize SNP for ioctl(SNPCONFIG)

Sashiko notes:

if SEV initialization fails and KVM is actively running normal VMs, could a userspace process trigger this code path via /dev/sev ioctls (e.g., SEVPDHGEN) and zero out MSRVMHSAVEPA globally? Would the next VMRUN execution for an active VM trigger a general protection fault and crash the host?

Refuse to re-try initialization if SNP is not already initialized for SNPCONFIG.

This is technically an ABI break: before if SNP initialization failed it could be transparently retriggered by this ioctl, and if no VMs were running, everything worked fine. Hopefully this is enough of a corner case that nobody will notice, but someone does, there are a few options:

do something like symbolget() for kvm and refuse to initialize if KVM is loaded check each cpu's HSAVEPA for non-zero data before re-initializing once initialization has failed, continue to refuse to initialize until the ccp module is unloaded

Affected Software

4 affected components
Linux Linux kernel
Linux Linux kernel>=6.12.75<6.12.97
Linux Linux kernel>=6.16<6.18.39
Linux Linux kernel>=6.19<7.1.4

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Update the Linux kernel so that it refuses to re-try SNP initialization when SNP_CONFIG has not already been initialized (i.e., prevent retriggering of initialization after a failed attempt via the SNP_CONFIG ioctl path).

    Linux kernel (SNP initialization path) SNP_CONFIG re-initialization behavior = Refuse to re-try initialization if SNP is not already initialized for SNP_CONFIG
  2. Compensating control

    If loading behavior changes become noticeable due to this initialization refusal behavior (ABI break), unload and reload the ccp module to restore expected behavior for ioctl(SNP_CONFIG) usage.

Event History

Jul 25, 2026
CVE Published
via MITRE·08:49 AM
Data Sourced
via MITRE·08:49 AM
Description
Data Sourced
via NVD·10:17 AM
RemedyDescriptionSeverityAffected Software

Frequently Asked Questions

1

What conditions are needed for this to affect a host?

The issue requires a prior SNP/SEV initialization failure, a local userspace process able to issue ioctls through /dev/sev, and KVM actively running normal virtual machines. Retrying initialization through an ioctl such as SEV_PDH_GEN could then clear MSR_VM_HSAVE_PA globally.

2

What is the likely operational impact?

The next VMRUN execution for an active virtual machine may trigger a general protection fault and crash the host. The CVSS vector indicates local access with low privileges is required and no user interaction is needed.

3

What changes after applying the fix?

The kernel refuses to retry SNP initialization through ioctl(SNP_CONFIG) when SNP is not already initialized. This prevents the unsafe reinitialization path, but changes previous behavior where a failed SNP initialization could be transparently retriggered by that ioctl.

4

How can I tell whether my environment is exposed to the described scenario?

Review whether SNP or SEV initialization has failed on the host, whether /dev/sev is accessible to local userspace processes, and whether KVM is currently running normal VMs. The described crash scenario depends on all of those conditions.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203