CVE-2025-39877CWE-416

CVE-2025-39877

High · published September 23, 2025

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

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

mm/damon/sysfs: fix use-after-free in state_show()

state_show() reads kdamond->damon_ctx without holding damon_sysfs_lock.

This allows a use-after-free race:

CPU 0 CPU 1

----- -----

state_show() damon_sysfs_turn_damon_on()

ctx = kdamond->damon_ctx; mutex_lock(&damon_sysfs_lock);

damon_destroy_ctx(kdamond->damon_ctx);

kdamond->damon_ctx = NULL;

mutex_unlock(&damon_sysfs_lock);

damon_is_running(ctx); /* ctx is freed */

mutex_lock(&ctx->kdamond_lock); /* UAF */

(The race can also occur with damon_sysfs_kdamonds_rm_dirs() and

damon_sysfs_kdamond_release(), which free or replace the context under

damon_sysfs_lock.)

Fix by taking damon_sysfs_lock before dereferencing the context, mirroring

the locking used in pid_show().

The bug has existed since state_show() first accessed kdamond->damon_ctx.

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.00154 · 4.1th percentile
Weakness
CWE-416 · Use After Free
Published
2025-09-23T10:15Z
Affected products (10)
ProductVersionsFixed in
linux/linux_kernel≥ 5.18, < 6.1.1536.1.153
linux/linux_kernel≥ 6.2, < 6.6.1076.6.107
linux/linux_kernel≥ 6.7, < 6.12.486.12.48
linux/linux_kernel≥ 6.13, < 6.16.86.16.8
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
debian/debian_linuxall versions—
References (6)
EPSS history
Timeline
  • 23 SEP 06:00Z
    mm/damon/sysfs: fix use-after-free in state_show()
    cvelistv5