GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2026-64286 (GCVE-0-2026-64286)

Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-08-17 04:52
VLAI
Title
KVM: arm64: Clear __hyp_running_vcpu when flushing the pKVM hyp vCPU
Summary
In the Linux kernel, the following vulnerability has been resolved: KVM: arm64: Clear __hyp_running_vcpu when flushing the pKVM hyp vCPU flush_hyp_vcpu() copies the host vCPU context into the hyp's private vCPU on every run. ctxt_to_vcpu() expects a guest context to have a NULL __hyp_running_vcpu, which is only ever set on the host context, so that it resolves the vCPU via container_of(). While this is generally the case, flush_hyp_vcpu() copies the context verbatim and does not enforce this, so a value provided by the host is dereferenced at EL2 (host -> EL2). Fix by clearing __hyp_running_vcpu after the copy.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: be66e67f175096f283c9d5614c4991fc9e7ed975 , < 477145860dba4c30f0b4e36f02f4c5291c1c888b (git)
Affected: be66e67f175096f283c9d5614c4991fc9e7ed975 , < dfaef40d8a1533940fc1af788d70fce07362b4ce (git)
Affected: be66e67f175096f283c9d5614c4991fc9e7ed975 , < 6bea2f8becdb20d34378493c3b77a9b9cf8c6cfa (git)
Affected: be66e67f175096f283c9d5614c4991fc9e7ed975 , < d4f4d61715d1061ba83b88196a3605662be30750 (git)
Affected: be66e67f175096f283c9d5614c4991fc9e7ed975 , < e8042f6e1d7befb2fb6b10a75918642bcd0acf9a (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.2
Unaffected: 0 , < 6.2 (semver)
Unaffected: 6.6.145 , ≤ 6.6.* (semver)
Unaffected: 6.12.97 , ≤ 6.12.* (semver)
Unaffected: 6.18.39 , ≤ 6.18.* (semver)
Unaffected: 7.1.4 , ≤ 7.1.* (semver)
Unaffected: 7.2 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "arch/arm64/kvm/hyp/nvhe/hyp-main.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "477145860dba4c30f0b4e36f02f4c5291c1c888b",
              "status": "affected",
              "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
              "versionType": "git"
            },
            {
              "lessThan": "dfaef40d8a1533940fc1af788d70fce07362b4ce",
              "status": "affected",
              "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
              "versionType": "git"
            },
            {
              "lessThan": "6bea2f8becdb20d34378493c3b77a9b9cf8c6cfa",
              "status": "affected",
              "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
              "versionType": "git"
            },
            {
              "lessThan": "d4f4d61715d1061ba83b88196a3605662be30750",
              "status": "affected",
              "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
              "versionType": "git"
            },
            {
              "lessThan": "e8042f6e1d7befb2fb6b10a75918642bcd0acf9a",
              "status": "affected",
              "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "arch/arm64/kvm/hyp/nvhe/hyp-main.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.2"
            },
            {
              "lessThan": "6.2",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.145",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.97",
              "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.6.145",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.97",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.39",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.4",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: arm64: Clear __hyp_running_vcpu when flushing the pKVM hyp vCPU\n\nflush_hyp_vcpu() copies the host vCPU context into the hyp\u0027s private\nvCPU on every run. ctxt_to_vcpu() expects a guest context to have a\nNULL __hyp_running_vcpu, which is only ever set on the host context, so\nthat it resolves the vCPU via container_of(). While this is generally\nthe case, flush_hyp_vcpu() copies the context verbatim and does not\nenforce this, so a value provided by the host is dereferenced at EL2\n(host -\u003e EL2).\n\nFix by clearing __hyp_running_vcpu after the copy."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 8.2,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - A malicious or compromised local EL1 host can place the pointer in the host vCPU context and trigger the vulnerable pKVM path through KVM_RUN; no remote input path reaches it.\nAC:L - The attacker-selected pointer is copied and dereferenced deterministically on every vCPU run, without a race, and EL2 addresses of host-donated metadata are derivable by the host.\nPR:H - Exploitation requires host-kernel control or an equivalent arbitrary kernel write. The KVM userspace register API does not expose __hyp_running_vcpu, and user namespaces do not bypass this restriction.\nUI:N - Once the malicious host context is prepared, invoking the vCPU run path requires no action by another user.\nS:C - The vulnerability crosses the intended isolation boundary from the untrusted EL1 host into the pKVM hypervisor at EL2 and can affect protected-VM resources.\nC:H - The forged pointer drives EL2-private memory dereferences during system-register restoration. Chaining these reads with the write-side corruption can compromise EL2 and expose hypervisor or protected-guest memory.\nI:H - The system-register save path can write through the attacker-selected vCPU pointer into EL2-accessible memory. This can corrupt trusted hypervisor metadata and plausibly enable control-flow or protected-guest state modification.\nA:H - An invalid or unmapped pointer causes a synchronous EL2 fault followed by the nVHE HYP panic handler, which explicitly panics the host kernel."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T04:52:42.012Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/477145860dba4c30f0b4e36f02f4c5291c1c888b"
        },
        {
          "url": "https://git.kernel.org/stable/c/dfaef40d8a1533940fc1af788d70fce07362b4ce"
        },
        {
          "url": "https://git.kernel.org/stable/c/6bea2f8becdb20d34378493c3b77a9b9cf8c6cfa"
        },
        {
          "url": "https://git.kernel.org/stable/c/d4f4d61715d1061ba83b88196a3605662be30750"
        },
        {
          "url": "https://git.kernel.org/stable/c/e8042f6e1d7befb2fb6b10a75918642bcd0acf9a"
        }
      ],
      "title": "KVM: arm64: Clear __hyp_running_vcpu when flushing the pKVM hyp vCPU",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-64286",
    "datePublished": "2026-07-25T08:49:27.542Z",
    "dateReserved": "2026-07-19T15:36:31.778Z",
    "dateUpdated": "2026-08-17T04:52:42.012Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-64286",
      "date": "2026-09-19",
      "epss": "0.00175",
      "percentile": "0.07311"
    },
    "microsoft_vex": {
      "current_release_date": "2026-08-07T01:21:04.000Z",
      "cve": "CVE-2026-64286",
      "id": "msrc_CVE-2026-64286",
      "initial_release_date": "2026-07-26T01:03:42.000Z",
      "product_status:fixed": "1",
      "product_status:known_affected": "1",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "KVM: arm64: Clear __hyp_running_vcpu when flushing the pKVM hyp vCPU",
      "url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-64286.json",
      "version": "3"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "arch/arm64/kvm/hyp/nvhe/hyp-main.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "477145860dba4c30f0b4e36f02f4c5291c1c888b",
                    "status": "affected",
                    "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "dfaef40d8a1533940fc1af788d70fce07362b4ce",
                    "status": "affected",
                    "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "6bea2f8becdb20d34378493c3b77a9b9cf8c6cfa",
                    "status": "affected",
                    "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "d4f4d61715d1061ba83b88196a3605662be30750",
                    "status": "affected",
                    "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "e8042f6e1d7befb2fb6b10a75918642bcd0acf9a",
                    "status": "affected",
                    "version": "be66e67f175096f283c9d5614c4991fc9e7ed975",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "arch/arm64/kvm/hyp/nvhe/hyp-main.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.2"
                  },
                  {
                    "lessThan": "6.2",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.6.*",
                    "status": "unaffected",
                    "version": "6.6.145",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.97",
                    "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"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "configurations": [
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "7046B092-F810-4440-ACE6-60218518EECE",
                    "versionEndExcluding": "6.6.145",
                    "versionStartIncluding": "6.2",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "05880CF6-5AD2-44E9-853A-6CE8318E76A5",
                    "versionEndExcluding": "6.12.97",
                    "versionStartIncluding": "6.7",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "914AE4BC-3D59-4C5A-9DB5-9CE327B429F7",
                    "versionEndExcluding": "6.18.39",
                    "versionStartIncluding": "6.13",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "6228DDD6-4557-4AA3-9F43-AB995D471E42",
                    "versionEndExcluding": "7.1.4",
                    "versionStartIncluding": "6.19",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: arm64: Clear __hyp_running_vcpu when flushing the pKVM hyp vCPU\n\nflush_hyp_vcpu() copies the host vCPU context into the hyp\u0027s private\nvCPU on every run. ctxt_to_vcpu() expects a guest context to have a\nNULL __hyp_running_vcpu, which is only ever set on the host context, so\nthat it resolves the vCPU via container_of(). While this is generally\nthe case, flush_hyp_vcpu() copies the context verbatim and does not\nenforce this, so a value provided by the host is dereferenced at EL2\n(host -\u003e EL2).\n\nFix by clearing __hyp_running_vcpu after the copy."
          }
        ],
        "id": "CVE-2026-64286",
        "lastModified": "2026-08-17T05:17:28.020",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 8.2,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "HIGH",
                "scope": "CHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.5,
              "impactScore": 6.0,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-07-25T10:17:09.243",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/477145860dba4c30f0b4e36f02f4c5291c1c888b"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/6bea2f8becdb20d34378493c3b77a9b9cf8c6cfa"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/d4f4d61715d1061ba83b88196a3605662be30750"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/dfaef40d8a1533940fc1af788d70fce07362b4ce"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/e8042f6e1d7befb2fb6b10a75918642bcd0acf9a"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Analyzed",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "NVD-CWE-noinfo"
              }
            ],
            "source": "nvd@nist.gov",
            "type": "Primary"
          }
        ]
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-05T14:10:29+00:00",
      "cve": "CVE-2026-64286",
      "id": "CVE-2026-64286",
      "initial_release_date": "2026-07-25T00:00:00+00:00",
      "product_status:known_affected": "108",
      "product_status:known_not_affected": "166",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: KVM: arm64: Clear __hyp_running_vcpu when flushing the pKVM hyp vCPU",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-64286.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-18T00:42:10Z",
      "cve": "CVE-2026-64286",
      "id": "CVE-2026-64286",
      "initial_release_date": "2026-07-25T16:46:33Z",
      "product_status:known_affected": "482",
      "product_status:known_not_affected": "251",
      "product_status:recommended": "111",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-64286",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-64286.json",
      "version": "12"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…