CVE-2023-53608CWE-416

CVE-2023-53608

High · published October 4, 2025

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

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

nilfs2: fix potential UAF of struct nilfs_sc_info in nilfs_segctor_thread()

The finalization of nilfs_segctor_thread() can race with

nilfs_segctor_kill_thread() which terminates that thread, potentially

causing a use-after-free BUG as KASAN detected.

At the end of nilfs_segctor_thread(), it assigns NULL to "sc_task" member

of "struct nilfs_sc_info" to indicate the thread has finished, and then

notifies nilfs_segctor_kill_thread() of this using waitqueue

"sc_wait_task" on the struct nilfs_sc_info.

However, here, immediately after the NULL assignment to "sc_task", it is

possible that nilfs_segctor_kill_thread() will detect it and return to

continue the deallocation, freeing the nilfs_sc_info structure before the

thread does the notification.

This fixes the issue by protecting the NULL assignment to "sc_task" and

its notification, with spinlock "sc_state_lock" of the struct

nilfs_sc_info. Since nilfs_segctor_kill_thread() does a final check to

see if "sc_task" is NULL with "sc_state_lock" locked, this can eliminate

the race.

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.00149 · 3.8th percentile
Weakness
CWE-416 · Use After Free
Published
2025-10-04T20:15Z
Affected products (12)
ProductVersionsFixed in
linux/linux_kernel≥ 2.6.30, < 4.14.3134.14.313
linux/linux_kernel≥ 4.15, < 4.19.2814.19.281
linux/linux_kernel≥ 4.20, < 5.4.2415.4.241
linux/linux_kernel≥ 5.5, < 5.10.1785.10.178
linux/linux_kernel≥ 5.11, < 5.15.1075.15.107
linux/linux_kernel≥ 5.16, < 6.1.246.1.24
linux/linux_kernel≥ 6.2, < 6.2.116.2.11
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (8)
EPSS history
Timeline
  • 04 OCT 15:44Z
    nilfs2: fix potential UAF of struct nilfs_sc_info in nilfs_segctor_thread()
    cvelistv5