CVE-2023-53649
kernel: perf trace: Really free the evsel->priv area
Severity
LowRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · October 7, 2025
Updated · June 30, 2026
Description
A memory leak flaw was found in the Linux kernel's perf trace tool in the event selector cleanup logic. A local user can trigger this issue by running perf trace commands, causing the tool to free memory based on an incorrect condition check that inverts the intended logic for non-syscall tracepoints. This results in allocated memory never being freed, leading to resource exhaustion and denial of service through memory depletion.
Statement
The perf trace cleanup code contains inverted logic when freeing the evsel->priv area. Memory is allocated when the tracepoint system is not "syscalls", but the cleanup code only frees when it is "syscalls", creating a mismatch. This means memory allocated for non-syscall tracepoints is never released, causing a permanent leak with each perf trace invocation. The issue was detected using AddressSanitizer during testing and manifests as 40-byte leaks per event selector. While a single perf trace command leaks relatively small amounts of memory, repeated invocations or long-running trace sessions can accumulate significant memory consumption.
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
No mitigation is specified in collected source.
CVSS / CWE
CVSS 3.1 · 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CWE-771 · Missing Reference to Active Allocated Resource