CVE-2026-64287: KVM: arm64: Bound used_lrs when flushing the pKVM hyp vCPU
Vulnerability summary
CVE-2026-64287 is a high (CVSS 8.2) Out-of-bounds Read vulnerability in linux. EPSS estimates a 0.18% chance of exploitation in the next 30 days, higher than 7% of scored vulnerabilities.
Not severe (CVSS 8.2, local access); no exploitation reported by the 5 checked sources
Source freshness unavailable
How is this decided?Advisory lineage
Upstream 0 · Downstream 30 · Related 26Timeline
- 25-07-2026PublishedVulnerability first disclosed.
- 19-10-2026Last modifiedVulnerability information updated.
Description
In the Linux kernel, the following vulnerability has been resolved: KVM: arm64: Bound used_lrs when flushing the pKVM hyp vCPU flush_hyp_vcpu() copies the host vGIC state into the hyp's private vCPU on every run. The vGIC list register save and restore use used_lrs as their loop bound and expect it to stay within the number of implemented list registers. While this is generally the case, flush_hyp_vcpu() copies vgic_v3 verbatim and does not enforce this, so a value provided by the host is used at EL2 to index vgic_lr[] and access ICH_LR<n>_EL2 (host -> EL2). Fix by clamping used_lrs to the number of implemented list registers after the copy, as the trusted path already does in vgic_flush_lr_state(). The number of implemented list registers is constant after init, so it is replicated once from kvm_vgic_global_state.nr_lr into hyp_gicv3_nr_lr rather than read on every entry.
CVSS metrics
4 scores · 4 sources · 1 version- OSV · UbuntuEcosystem advisory · calculated8.2HighCVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
- OSV · DebianEcosystem advisory · calculated8.2HighCVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
- NVDNIST8.2HighCVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
EPSS trend
Probability
0.18%
Chance of exploitation in the next 30 days
Percentile
7%
Versus all other CVEs
30-day change
No change 0.00 pp
From 0.18% on 04-10-2026
Known exploited
Compare KEV catalogsNot in the CISA KEV catalog.
Not in the ENISA CNW catalog.
Not in the CIRCL catalog.
Public exploits
0 foundNo public exploits indexed.
Weaknesses
CWE · root causeAffected systems
Known conditions: local access, administrative account, no user interaction (CVSS vector). Other conditions: not stated in public data.
Ubuntu142 products
- linuxAll versions (No fix recorded) | < 6.8.0-147.147 | < 7.0.0-31.31
- linux-allwinner-5.19All versions (No fix recorded)
- linux-awsAll versions (No fix recorded) | < 6.8.0-1067.70 | < 7.0.0-1012.12
- linux-aws-5.0All versions (No fix recorded)
- linux-aws-5.11All versions (No fix recorded)
Debian2 products
- linux< 6.12.100-1 | < 7.1.4-1
- linux-6.12< 6.12.100-1~deb12u1
Linux2 products
- linux≥ be66e67f175096f283c9d5614c4991fc9e7ed975, < 2c5e72b9fbf83fdfa724e9f1af0f418ccf8739b8 | ≥ be66e67f175096f283c9d5614c4991fc9e7ed975, < 9fa301d8298778dd799fa4dcf7a7f440715d146e | ≥ be66e67f175096f283c9d5614c4991fc9e7ed975, < c646431865f4b1a5b14067233fa27b11e05e0d46 | ≥ be66e67f175096f283c9d5614c4991fc9e7ed975, < 7fca3fcef81c713bc82a37bf741e0f28e6d04a6f | ≥ be66e67f175096f283c9d5614c4991fc9e7ed975, < 8cc8bbbfab14c22c5551d0dd19b208a44b141c76 | 6.2
- linux_kernel≥ 6.2, < 6.6.145 | ≥ 6.7, < 6.12.97 | ≥ 6.13, < 6.18.40 | ≥ 6.19, < 7.1.4
3 vendors · 146 products