{
  "schema_version": "1.6.1",
  "id": "RPI-CVE-2026-43133",
  "modified": "2026-10-09T11:39:44Z",
  "upstream": [
    "CVE-2026-43133"
  ],
  "published": "2026-05-06T11:29:17Z",
  "summary": "KVM: nSVM: Always use vmcb01 in VMLOAD/VMSAVE emulation",
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: nSVM: Always use vmcb01 in VMLOAD/VMSAVE emulation\n\nCommit cc3ed80ae69f (\"KVM: nSVM: always use vmcb01 to for vmsave/vmload\nof guest state\") made KVM always use vmcb01 for the fields controlled by\nVMSAVE/VMLOAD, but it missed updating the VMLOAD/VMSAVE emulation code\nto always use vmcb01.\n\nAs a result, if VMSAVE/VMLOAD is executed by an L2 guest and is not\nintercepted by L1, KVM will mistakenly use vmcb02. Always use vmcb01\ninstead of the current VMCB.",
  "severity": [
    {
      "type": "CVSS_V3",
      "score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:H"
    }
  ],
  "affected": [
    {
      "package": {
        "ecosystem": "Raspberry Pi OS:12",
        "name": "linux"
      },
      "versions": [
        "1:6.1.47-1+rpt4"
      ],
      "ecosystem_specific": {
        "binaries": [
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-2712",
            "binary_version": "1:6.1.47-1+rpt4"
          },
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-v6",
            "binary_version": "1:6.1.47-1+rpt4"
          },
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-v7",
            "binary_version": "1:6.1.47-1+rpt4"
          },
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-v7l",
            "binary_version": "1:6.1.47-1+rpt4"
          },
          {
            "binary_name": "linux-image-6.1.0-rpi3-rpi-v8",
            "binary_version": "1:6.1.47-1+rpt4"
          }
        ]
      },
      "database_specific": {
        "per_version": {
          "1:6.1.47-1+rpt4": {
            "linux_commit": "655fc658a15ae7a6f37103754adb39ba52a9a14e",
            "upstream_version": "6.1.47",
            "assessment": "commit ancestry (strak rule)",
            "upstream_fixed": "6.1.165",
            "compiled_filter": false
          }
        }
      }
    }
  ],
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://www.cve.org/CVERecord?id=CVE-2026-43133"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/10063e1251c1485034a018236080792ad083dcc5"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/c3b7015000988ba35ecd5648f4b2283960f00543"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/3880e331b0b31d0d5d3702b124f6c93539cd478a"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/fce2fd4a2ca05670a91015aacccf96a1c26268fd"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/d464cf1ed900d47c85393d40b00017b6adfc2e6c"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/0004ecb798b30e90d7ebfe74efae2d9423315a64"
    },
    {
      "type": "FIX",
      "url": "https://git.kernel.org/stable/c/127ccae2c185f62e6ecb4bf24f9cb307e9b9c619"
    }
  ],
  "database_specific": {
    "source": "https://git.kernel.org/pub/scm/linux/security/vulns.git",
    "upstream_modified": "2026-08-05T13:16:28Z",
    "severity": {
      "source": "kernel CNA",
      "cvss_v3_score": 7.9,
      "cvss_v3_severity": "High",
      "scenario": "AV:L - The vulnerable path is reached by locally running a KVM vCPU through /dev/kvm and executing nested SVM VMLOAD/VMSAVE from an L2 guest; it is not reachable via network packets.\nAC:L - The trigger is deterministic once nested SVM is available: configure L1 not to intercept VMLOAD/VMSAVE and execute the instruction in L2. No race or attacker-uncontrolled timing condition is required.\nPR:L - The attacker needs the ability to create/run a KVM VM or execute code in a nested guest, which is local low privilege where /dev/kvm is delegated. No real init-namespace root capability is required by the vulnerable emulation path itself.\nUI:N - After the VM/nested guest is running, exploitation is triggered solely by guest instruction execution. No additional victim user action is required.\nS:C - The bug is in KVM\u2019s enforcement of the nested virtualization boundary, where L2 execution causes KVM to operate on the wrong L0-maintained VMCB state. That can affect resources outside the L2 guest\u2019s own security authority.\nC:L - VMSAVE can copy bounded VMLOAD/VMSAVE save-state fields from the wrong internal VMCB into guest-accessible memory. I did not identify an arbitrary host-memory read primitive, so the defensible confidentiality impact is limited.\nI:L - VMLOAD can corrupt a bounded set of VMLOAD/VMSAVE state fields in the wrong KVM VMCB, causing incorrect nested guest/L1 state handling. I did not find a direct arbitrary host write or host code execution primitive.\nA:H - The wrong VMCB state can make nested VM execution fail or crash/hang the affected virtual machine/vCPU, and the attacker can trigger it repeatedly. This is a complete availability impact for the affected nested virtualization workload, even though I did not find a host kernel panic path."
    }
  }
}
