CVE-2026-72280 (GCVE-0-2026-72280)

Vulnerability from cvelistv5 – Published: 2026-08-15 05:55 – Updated: 2026-08-17 05:42
VLAI
Title
KVM: arm64: nv: Drop bogus WARN for write to ZCR_EL2
Summary
In the Linux kernel, the following vulnerability has been resolved: KVM: arm64: nv: Drop bogus WARN for write to ZCR_EL2 It is entirely possible for a guest to write to the ZCR_EL2 sysreg alias while in a nested context, as it is expected if FEAT_NV2 is advertised to the L1 hypervisor. Get rid of the bogus WARN which, since the hyp vectors were installed at this point, has the effect of a hyp_panic...
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f , < 6561597dba97e3e8479a9919bda172cf43eb902c (git)
Affected: 0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f , < 5000bcae71c869cba6674c326fec2d8ad659ae3a (git)
Affected: 0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f , < 7deadbc5dab5b8e2316364603bc6281129c8461c (git)
Affected: 0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f , < 9f1667098c6ae7ec81a9a56859cfdacb822aa0d0 (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.11
Unaffected: 0 , < 6.11 (semver)
Unaffected: 6.12.97 , ≤ 6.12.* (semver)
Unaffected: 6.18.40 , ≤ 6.18.* (semver)
Unaffected: 7.1.5 , ≤ 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/include/hyp/switch.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "6561597dba97e3e8479a9919bda172cf43eb902c",
              "status": "affected",
              "version": "0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f",
              "versionType": "git"
            },
            {
              "lessThan": "5000bcae71c869cba6674c326fec2d8ad659ae3a",
              "status": "affected",
              "version": "0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f",
              "versionType": "git"
            },
            {
              "lessThan": "7deadbc5dab5b8e2316364603bc6281129c8461c",
              "status": "affected",
              "version": "0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f",
              "versionType": "git"
            },
            {
              "lessThan": "9f1667098c6ae7ec81a9a56859cfdacb822aa0d0",
              "status": "affected",
              "version": "0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "arch/arm64/kvm/hyp/include/hyp/switch.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.11"
            },
            {
              "lessThan": "6.11",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.97",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.40",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.5",
              "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.97",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.40",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.5",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: arm64: nv: Drop bogus WARN for write to ZCR_EL2\n\nIt is entirely possible for a guest to write to the ZCR_EL2 sysreg alias\nwhile in a nested context, as it is expected if FEAT_NV2 is advertised\nto the L1 hypervisor.\n\nGet rid of the bogus WARN which, since the hyp vectors were installed at\nthis point, has the effect of a hyp_panic..."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.1,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The flaw is reached when guest code in a nested KVM context executes an MSR/MRS to ZCR_EL2 that traps to EL2, traversing KVM_RUN \u2192 hyp fast-path kvm_hyp_handle_zcr_el2() \u2192 kvm_hyp_handle_fpsimd(); this requires local guest execution on an arm64 VHE KVM host, not remote network input.\nAC:L - On arm64 VHE hosts with nested virtualization (FEAT_NV2) and SVE enabled, a tenant guest in nested context (L1 non-hyp or L2) can deterministically issue the ZCR_EL2 access that hits the bogus WARN; the attacker controls the trap timing and FP/SVE lazy-switch preconditions without uncontrollable host races.\nPR:N - No host root or init-namespace capabilities are required\u2014exploitation needs only code execution inside an assigned KVM guest with nested virtualization and SVE enabled (typical nested-virt ARM cloud tenant), not privileged access on the physical host itself.\nUI:N - No victim user or administrator action is required beyond the attacker operating their own nested/SVE-enabled guest workload; triggering is fully automated via a single guest MSR to ZCR_EL2 that traps into the hypervisor fast path.\nS:C - A guest-triggered WARN in EL2 hypervisor code escalates to hyp_panic(), crashing the host kernel and denying all co-resident VMs\u2014crossing the guest-to-host KVM virtualization security boundary even though exploitation is denial-of-service rather than memory corruption.\nC:N - The failure mode is WARN_ON_ONCE \u2192 hyp_panic with no out-of-bounds access, use-after-free, or memory corruption; it is a deterministic hypervisor assertion panic without an information disclosure or memory-read primitive.\nI:N - No guest-controlled kernel memory write or control-flow hijack occurs; the bogus WARN aborts via hyp_panic before any exploitable state mutation beyond crashing the host, and the removed check was incorrectly rejecting a legitimate nested ZCR_EL2 write path.\nA:H - WARN_ON_ONCE in EL2 with hyp vectors installed invokes hyp_panic() and host panic(), immediately denying availability of the hypervisor and every VM on the affected arm64 KVM host; the attack is repeatable on each ZCR_EL2 trap while nested virt and SVE remain enabled."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T05:42:15.995Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/6561597dba97e3e8479a9919bda172cf43eb902c"
        },
        {
          "url": "https://git.kernel.org/stable/c/5000bcae71c869cba6674c326fec2d8ad659ae3a"
        },
        {
          "url": "https://git.kernel.org/stable/c/7deadbc5dab5b8e2316364603bc6281129c8461c"
        },
        {
          "url": "https://git.kernel.org/stable/c/9f1667098c6ae7ec81a9a56859cfdacb822aa0d0"
        }
      ],
      "title": "KVM: arm64: nv: Drop bogus WARN for write to ZCR_EL2",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-72280",
    "datePublished": "2026-08-15T05:55:04.969Z",
    "dateReserved": "2026-08-09T03:40:39.916Z",
    "dateUpdated": "2026-08-17T05:42:15.995Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-72280",
      "date": "2026-09-21",
      "epss": "0.00183",
      "percentile": "0.08154"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "arch/arm64/kvm/hyp/include/hyp/switch.h"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "6561597dba97e3e8479a9919bda172cf43eb902c",
                    "status": "affected",
                    "version": "0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "5000bcae71c869cba6674c326fec2d8ad659ae3a",
                    "status": "affected",
                    "version": "0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "7deadbc5dab5b8e2316364603bc6281129c8461c",
                    "status": "affected",
                    "version": "0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "9f1667098c6ae7ec81a9a56859cfdacb822aa0d0",
                    "status": "affected",
                    "version": "0cfc85b8f5cf3b77463d61542191c75ba0cc3a5f",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "arch/arm64/kvm/hyp/include/hyp/switch.h"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.11"
                  },
                  {
                    "lessThan": "6.11",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.97",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.40",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.1.*",
                    "status": "unaffected",
                    "version": "7.1.5",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.2",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: arm64: nv: Drop bogus WARN for write to ZCR_EL2\n\nIt is entirely possible for a guest to write to the ZCR_EL2 sysreg alias\nwhile in a nested context, as it is expected if FEAT_NV2 is advertised\nto the L1 hypervisor.\n\nGet rid of the bogus WARN which, since the hyp vectors were installed at\nthis point, has the effect of a hyp_panic..."
          }
        ],
        "id": "CVE-2026-72280",
        "lastModified": "2026-08-17T06:18:30.593",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 7.1,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "NONE",
                "integrityImpact": "NONE",
                "privilegesRequired": "NONE",
                "scope": "CHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 2.5,
              "impactScore": 4.0,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-08-15T06:21:58.270",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/5000bcae71c869cba6674c326fec2d8ad659ae3a"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/6561597dba97e3e8479a9919bda172cf43eb902c"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/7deadbc5dab5b8e2316364603bc6281129c8461c"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/9f1667098c6ae7ec81a9a56859cfdacb822aa0d0"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-18T07:27:49+00:00",
      "cve": "CVE-2026-72280",
      "id": "CVE-2026-72280",
      "initial_release_date": "2026-08-15T00:00:00+00:00",
      "product_status:known_affected": "184",
      "product_status:known_not_affected": "90",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: KVM: arm64: nv: Drop bogus WARN for write to ZCR_EL2",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-72280.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-01T13:31:00Z",
      "cve": "CVE-2026-72280",
      "id": "CVE-2026-72280",
      "initial_release_date": "2026-09-01T13:31:00Z",
      "product_status:known_not_affected": "362",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-72280",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-72280.json",
      "version": "2"
    }
  }
}



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…