CVE-2026-52959

virt: sev-guest: Do not use host-controlled page order in cleanup path

High · published June 24, 2026

CVSS v3.1
7.8
EPSS
0%
Percentile
1.4
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

virt: sev-guest: Do not use host-controlled page order in cleanup path

When issuing an extended guest request (SVM_VMGEXIT_EXT_GUEST_REQUEST),

get_ext_report() allocates a buffer to retrieve a certificate blob from the

host, keeping track of its size in report_req->certs_len.

However, the host may return SNP_GUEST_VMM_ERR_INVALID_LEN, indicating

an invalid buffer size, as well as the expected length of such buffer.

get_ext_report() subsequently updates report_req->certs_len with the

host-controlled value, and cleans up the buffer by computing a page order

from such value. This is incorrect, as the host-provided length may not

match the page order of the original allocation, potentially resulting

in corruption in the page allocator.

Fix this by using alloc_pages_exact() instead, and reusing @npages to

compute the size passed to free_pages_exact(). For consistency, also

use @npages to compute the size when allocating the pages, even though

this last change has no functional effect.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00113 · 1.4th percentile
Published
2026-06-24T16:28Z
EPSS history
Timeline
  • 24 JUN 16:28Z
    virt: sev-guest: Do not use host-controlled page order in cleanup path
    cvelistv5