CVE-2025-38595CWE-416

CVE-2025-38595

High · published August 19, 2025

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

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

xen: fix UAF in dmabuf_exp_from_pages()

[dma_buf_fd() fixes; no preferences regarding the tree it goes through -

up to xen folks]

As soon as we'd inserted a file reference into descriptor table, another

thread could close it. That's fine for the case when all we are doing is

returning that descriptor to userland (it's a race, but it's a userland

race and there's nothing the kernel can do about it). However, if we

follow fd_install() with any kind of access to objects that would be

destroyed on close (be it the struct file itself or anything destroyed

by its ->release()), we have a UAF.

dma_buf_fd() is a combination of reserving a descriptor and fd_install().

gntdev dmabuf_exp_from_pages() calls it and then proceeds to access the

objects destroyed on close - starting with gntdev_dmabuf itself.

Fix that by doing reserving descriptor before anything else and do

fd_install() only when everything had been set up.

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.00176 · 6.8th percentile
Weakness
CWE-416 · Use After Free
Published
2025-08-19T21:15Z
Affected products (3)
ProductVersionsFixed in
linux/linux_kernel≥ 4.19, < 6.12.426.12.42
linux/linux_kernel≥ 6.13, < 6.15.106.15.10
linux/linux_kernel≥ 6.16, < 6.16.16.16.1
References (5)
EPSS history
Timeline
  • 19 AUG 17:03Z
    xen: fix UAF in dmabuf_exp_from_pages()
    cvelistv5