CVE Database›Document archive›CVE-2025-39877

CVE-2025-39877

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

Loading…

Severity

Moderate

Red Hat Product Security

4.7

CVSS 3.1

Review impact separately from score.

Published · September 23, 2025

Updated · June 30, 2026

Description

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.

Statement

A race in mm/damon/sysfs::state_show() allowed reading kdamond->damon_ctx without holding damon_sysfs_lock, leading to a use-after-free when the context was concurrently replaced or destroyed by DAMON control paths. The fix mirrors pid_show() by taking damon_sysfs_lock around the dereference and query. Impact is primarily a kernel crash (DoS) triggered locally while DAMON is being reconfigured.

CVSS score applicability

The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.

Mitigation

Mitigation for this issue is either not available or the currently available options don't meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.

CVSS / CWE

CVSS 3.1 · 4.7
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H

CWE-362 · Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')