CVE-2026-23248CWE-362CWE-416

CVE-2026-23248

High · published March 18, 2026

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

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

perf/core: Fix refcount bug and potential UAF in perf_mmap

Syzkaller reported a refcount_t: addition on 0; use-after-free warning

in perf_mmap.

The issue is caused by a race condition between a failing mmap() setup

and a concurrent mmap() on a dependent event (e.g., using output

redirection).

In perf_mmap(), the ring_buffer (rb) is allocated and assigned to

event->rb with the mmap_mutex held. The mutex is then released to

perform map_range().

If map_range() fails, perf_mmap_close() is called to clean up.

However, since the mutex was dropped, another thread attaching to

this event (via inherited events or output redirection) can acquire

the mutex, observe the valid event->rb pointer, and attempt to

increment its reference count. If the cleanup path has already

dropped the reference count to zero, this results in a

use-after-free or refcount saturation warning.

Fix this by extending the scope of mmap_mutex to cover the

map_range() call. This ensures that the ring buffer initialization

and mapping (or cleanup on failure) happens atomically effectively,

preventing other threads from accessing a half-initialized or

dying ring buffer.

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.00099 · 0.8th percentile
Weaknesses
CWE-362 · Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition'); CWE-416 · Use After Free
Published
2026-03-18T15:16Z
Affected products (3)
ProductVersionsFixed in
linux/linux_kernel≥ 6.14, < 6.18.176.18.17
linux/linux_kernel≥ 6.19, < 6.19.76.19.7
linux/linux_kernelall versions—
References (3)
EPSS history
Timeline
  • 18 MAR 10:05Z
    perf/core: Fix refcount bug and potential UAF in perf_mmap
    cvelistv5