PT-2026-64508 · Linux · Linux
CVE-2026-64287
·
Published
2026-07-25
·
Updated
2026-07-25
None
No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
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 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.
Found an issue in the description? Have something to add? Feel free to write us 👾
Related Identifiers
Affected Products
Linux