Skip to content
Heist/ feed
High

KVM: SVM: Serialize accesses to the owner and mirror list with separate lock

Type: advisorySource: Official CVE List1 source record

In the Linux kernel, the following vulnerability has been resolved: KVM: SVM: Serialize accesses to the owner and mirror list with separate lock Interaction between KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM and KVM_CAP_VM_COPY_ENC_CONTEXT_FROM can cause two separate issues: - in sev_migrate_from(), when the destination KVM is a mirror, the mirror entry is moved from the source's list to the owner's mirror_vms list, without holding the owner's lock unlike other writers of the owner's mirror list (sev_vm_copy_enc_context_from(), sev_vm_destroy()). A concurrent COPY or destroy can race with sev_migrate_from() and corrupt the list. - In sev_vm_destroy(), the *owner* is still active and could receive concurrently a KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM that causes sev->enc_context_owner to change. In this case the incorrect VM receives kvm_put_kvm(). The second issue needs particular care because the owner could disappear altogether (even though the race window is impossibly small) between reading it and locking it. There is thus no way to perform the checks under the owner lock without putting struct kvm under SLAB_TYPESAFE_BY_RCU (which would allow kvm_get_kvm_safe() under RCU critical section). It is much simpler to just use a global lock, since the critical sections are so small and the new lock is always a leaf lock.

Announced Group revision 1
Original source ↗

CVE-2026-74607

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2026-74607

Linux

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Linux

Source reference: /containers/cna/affected/1/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "b2125513dfc0dd0ec5a9605138a3c356592cfb73",
        "lessThan": "7943ec3a6d0e7e0a2eb4943300bce089ac3e8c3e",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "b2125513dfc0dd0ec5a9605138a3c356592cfb73",
        "lessThan": "28afde1edbd8b20058cbf4d75fb57876471ec334",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "b2125513dfc0dd0ec5a9605138a3c356592cfb73",
        "lessThan": "328ab4fabe05af004d886659f8744076e320ddce",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "b2125513dfc0dd0ec5a9605138a3c356592cfb73",
        "lessThan": "47976eaaf0a4eb46dade48b3246779090db9e3ec",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "b2125513dfc0dd0ec5a9605138a3c356592cfb73",
        "lessThan": "d728baba0f20e49439fc7831bf3e4e7dee82161a",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "b2125513dfc0dd0ec5a9605138a3c356592cfb73",
        "lessThan": "1d78d33275ef2a16c6d080910b291d0a97a0e613",
        "versionType": "git"
      }
    ],
    "programFiles": [
      "arch/x86/kvm/svm/sev.c",
      "arch/x86/kvm/svm/svm.h"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "5.18"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "5.18",
        "versionType": "semver"
      },
      {
        "status": "unaffected",
        "version": "6.1.184",
        "versionType": "semver",
        "lessThanOrEqual": "6.1.*"
      },
      {
        "status": "unaffected",
        "version": "6.6.153",
        "versionType": "semver",
        "lessThanOrEqual": "6.6.*"
      },
      {
        "status": "unaffected",
        "version": "6.12.105",
        "versionType": "semver",
        "lessThanOrEqual": "6.12.*"
      },
      {
        "status": "unaffected",
        "version": "6.18.45",
        "versionType": "semver",
        "lessThanOrEqual": "6.18.*"
      },
      {
        "status": "unaffected",
        "version": "7.1.9",
        "versionType": "semver",
        "lessThanOrEqual": "7.1.*"
      },
      {
        "status": "unaffected",
        "version": "7.2",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "arch/x86/kvm/svm/sev.c",
      "arch/x86/kvm/svm/svm.h"
    ],
    "defaultStatus": "affected"
  }
]
Related CVEs
CVE-2026-74607

Source reference: /cveMetadata/cveId

Publisher severity

high

Source reference: /containers/cna/metrics

Event
#33237 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement