CVE-2026-52959

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

State
Published
Severity
7.8 High
Published
Jun 24, 2026
Updated
Aug 5, 2026
Reserved
Jun 9, 2026

Read the record on cve.org

Description

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.

Scores

CVSSScoreVectorSource
3.17.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 3e385c0d6ce88ac9916dcf84267bd5855d830748 to before 3f6fb0211b39aaa1b841260681dd02ca6b693ed5Affected
  • 3e385c0d6ce88ac9916dcf84267bd5855d830748 to before 9e48b4f813d2c3db75d522aa82ab705ce04b7e2dAffected
  • 3e385c0d6ce88ac9916dcf84267bd5855d830748 to before 23e6a1ca04ae44806439a5a446e62e4d42e80bb4Affected
  • 0b16521f95c875e79d657cb8d6911c15080dbb80Affected
  • 6.13.8 to before 6.14Affected
LinuxLinux
  • 6.14Affected
  • before 6.14Not affected
  • 6.18.33 through 6.18.*Not affected
  • 7.0.10 through 7.0.*Not affected
  • 7.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.