CVE-2026-64284 (GCVE-0-2026-64284)
Vulnerability from cvelistv5
Published
2026-07-25 08:49
Modified
2026-08-17 04:52
Summary
In the Linux kernel, the following vulnerability has been resolved: KVM: x86: Ensure vendor's exit handler runs before fastpath userspace exits Move the handling of fastpath userspace exits into vendor code to ensure KVM runs vendor specific operations that need to run before userspace gains control of the vCPU. E.g. for VMX (and soon to be for SVM as well), KVM needs to flush the PML buffer prior to exiting to userspace, otherwise any memory written by the final KVM_RUN might never be flagged as dirty. Note, waiting to snapshot CR0 and CR3 until svm_handle_exit() is flawed in general, as that risks consuming stale state in a fastpath handler. That will be addressed in a future change.
Impacted products
Vendor Product Version
Linux Linux Version: f7f39c50edb9d336274371953275e0d3503b9b75
Version: f7f39c50edb9d336274371953275e0d3503b9b75
Version: f7f39c50edb9d336274371953275e0d3503b9b75
Version: f7f39c50edb9d336274371953275e0d3503b9b75
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "arch/x86/kvm/svm/svm.c",
            "arch/x86/kvm/vmx/vmx.c",
            "arch/x86/kvm/x86.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "b3436d9b9b1affe1c3191ac9831308923f5f03c3",
              "status": "affected",
              "version": "f7f39c50edb9d336274371953275e0d3503b9b75",
              "versionType": "git"
            },
            {
              "lessThan": "4ad73ef0e7966ecfe67de0060537b4cb14d9acd4",
              "status": "affected",
              "version": "f7f39c50edb9d336274371953275e0d3503b9b75",
              "versionType": "git"
            },
            {
              "lessThan": "f2ca2b5326211bd38490f0497eb583721ce0bbc0",
              "status": "affected",
              "version": "f7f39c50edb9d336274371953275e0d3503b9b75",
              "versionType": "git"
            },
            {
              "lessThan": "0ffedf43910e44b76c2c1db4e9fbf12b268190c1",
              "status": "affected",
              "version": "f7f39c50edb9d336274371953275e0d3503b9b75",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "arch/x86/kvm/svm/svm.c",
            "arch/x86/kvm/vmx/vmx.c",
            "arch/x86/kvm/x86.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.12"
            },
            {
              "lessThan": "6.12",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.96",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.39",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.4",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.96",
                  "versionStartIncluding": "6.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.39",
                  "versionStartIncluding": "6.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.4",
                  "versionStartIncluding": "6.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "6.12",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: x86: Ensure vendor\u0027s exit handler runs before fastpath userspace exits\n\nMove the handling of fastpath userspace exits into vendor code to ensure\nKVM runs vendor specific operations that need to run before userspace gains\ncontrol of the vCPU.  E.g. for VMX (and soon to be for SVM as well), KVM\nneeds to flush the PML buffer prior to exiting to userspace, otherwise any\nmemory written by the final KVM_RUN might never be flagged as dirty.\n\nNote, waiting to snapshot CR0 and CR3 until svm_handle_exit() is flawed in\ngeneral, as that risks consuming stale state in a fastpath handler.  That\nwill be addressed in a future change."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.1,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The vulnerable path is reached through guest execution under the local KVM_RUN ioctl, not through network input.\nAC:L - With PML dirty logging active, the attacker can control guest writes and repeatedly force fastpath userspace exits such as HLT; no uncontrollable race must be won.\nPR:L - KVM_RUN and guest-debug operations require access to the VM\u0027s vCPU file descriptor but perform no capability or init-namespace root check.\nUI:N - No human interaction is required because migration and snapshot processing can be automated while guest code supplies the triggering exits.\nS:U - The flaw corrupts the affected VM\u0027s migration or saved state but does not provide host privilege escalation, host-memory access, or a guest-to-host escape.\nC:N - The incomplete dirty log does not expose memory contents or give the attacker a read primitive.\nI:H - Attacker-selected guest writes can be omitted from the final dirty bitmap, causing arbitrary guest pages to be restored with stale contents and substantially corrupting migrated state.\nA:H - Stale CR state or corrupted guest memory can make a migrated or restored VM crash, hang, or fail to resume."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T04:52:39.824Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/b3436d9b9b1affe1c3191ac9831308923f5f03c3"
        },
        {
          "url": "https://git.kernel.org/stable/c/4ad73ef0e7966ecfe67de0060537b4cb14d9acd4"
        },
        {
          "url": "https://git.kernel.org/stable/c/f2ca2b5326211bd38490f0497eb583721ce0bbc0"
        },
        {
          "url": "https://git.kernel.org/stable/c/0ffedf43910e44b76c2c1db4e9fbf12b268190c1"
        }
      ],
      "title": "KVM: x86: Ensure vendor\u0027s exit handler runs before fastpath userspace exits",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-64284",
    "datePublished": "2026-07-25T08:49:26.270Z",
    "dateReserved": "2026-07-19T15:36:31.777Z",
    "dateUpdated": "2026-08-17T04:52:39.824Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…