CVE-2026-31786CWE-120CWE-787

CVE-2026-31786

High · published April 30, 2026

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

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

Buffer overflow in drivers/xen/sys-hypervisor.c

The build id returned by HYPERVISOR_xen_version(XENVER_build_id) is

neither NUL terminated nor a string.

The first causes a buffer overflow as sprintf in buildid_show will

read and copy till it finds a NUL.

00000000 f4 91 51 f4 dd 38 9e 9d 65 47 52 eb 10 71 db 50 |..Q..8..eGR..q.P|

00000010 b9 a8 01 42 6f 2e 32 |...Bo.2|

00000017

So use a memcpy instead of sprintf to have the correct value:

00000000 f4 91 51 f4 dd 00 9e 9d 65 47 52 eb 10 71 db 50 |..Q.....eGR..q.P|

00000010 b9 a8 01 42 |...B|

00000014

(the above have a hack to embed a zero inside and check it's

returned correctly).

This is XSA-485 / CVE-2026-31786

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.00209 · 10.6th percentile
Weaknesses
CWE-120 · Buffer Copy without Checking Size of Input ('Classic Buffer Overflow'); CWE-787 · Out-of-bounds Write
Published
2026-04-30T15:16Z
Affected products (9)
ProductVersionsFixed in
linux/linux_kernel≥ 4.13, < 5.10.2545.10.254
linux/linux_kernel≥ 5.11, < 5.15.2045.15.204
linux/linux_kernel≥ 5.16, < 6.1.1706.1.170
linux/linux_kernel≥ 6.2, < 6.6.1376.6.137
linux/linux_kernel≥ 6.7, < 6.12.856.12.85
linux/linux_kernel≥ 6.13, < 6.18.266.18.26
linux/linux_kernel≥ 6.19, < 7.0.37.0.3
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (10)
EPSS history
Timeline
  • 30 APR 10:31Z
    Buffer overflow in drivers/xen/sys-hypervisor.c
    cvelistv5