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

tracing: Check return value of __register_event() in trace_module_add_events()

trace_module_add_events() ignores the return value of __register_event()
and unconditionally calls __add_event_to_tracers() for each event.

If __register_event() fails (for example, if event_init() fails), the
trace_event_call is not added to ftrace_events list, but
__add_event_to_tracers() still creates a trace_event_file pointing to it.
If module loading subsequently fails and module memory is freed, tracing
state retains a stale trace_event_call pointer in trace_event_file,
leading to a use-after-free when tracefs or tracing subsystem operations
are later executed.

Fix this by checking the return value of __register_event() and only
calling __add_event_to_tracers() if event registration succeeded.
Published: 2026-08-15
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability stems from trace_module_add_events() ignoring the result of __register_event() and then creating trace_event_file entries for events that failed to register. When a module that added such an event later unloads, the tracing subsystem retains a dangling pointer, which can be dereferenced during subsequent tracefs or tracing operations, resulting in a use‑after‑free. The compromised kernel memory can be exploited to execute arbitrary code or elevate privileges. The weakness is a classic use‑after‑free flaw.

Affected Systems

All Linux kernel installations that use the ftrace/tracing subsystem and have the ability to load kernel modules are affected. The issue existed until the patch that checks __register_event() return values was merged into the stable kernel tree. No specific kernel versions are listed in the data, so any current kernel build that has not applied this change is vulnerable.

Risk and Exploitability

The EPSS score is < 1% and the vulnerability is not listed in CISA’s KEV catalog, implying no known widespread exploitation in the public domain. However, use‑after‑free vulnerabilities in the kernel can be severe; a local attacker with the ability to load a kernel module can trigger the flaw. The attack vector is inferred to be local, requiring module load or modification capabilities, but the impact could extend to remote exploitation if elevated privileges are gained. The CVSS score is 7.8, indicating a high level of severity.

Generated by OpenCVE AI on August 18, 2026 at 04:40 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to a version containing the fix that checks the return value of __register_event() before adding events to tracers
  • Restrict kernel module loading to trusted signed modules or module loading altogether if it is not required for your environment
  • If upgrading is not immediately feasible and tracing is not essential for your operation, temporarily unmount or disable the tracefs filesystem to mitigate the use‑after‑free risk

Generated by OpenCVE AI on August 18, 2026 at 04:40 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DSA Debian DSA DSA-6466-1 linux security update
History

Wed, 19 Aug 2026 16:45:00 +0000


Tue, 18 Aug 2026 03:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Tue, 18 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-825
References
Metrics threat_severity

None

threat_severity

Moderate


Mon, 17 Aug 2026 11:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Mon, 17 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


Sat, 15 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: tracing: Check return value of __register_event() in trace_module_add_events() trace_module_add_events() ignores the return value of __register_event() and unconditionally calls __add_event_to_tracers() for each event. If __register_event() fails (for example, if event_init() fails), the trace_event_call is not added to ftrace_events list, but __add_event_to_tracers() still creates a trace_event_file pointing to it. If module loading subsequently fails and module memory is freed, tracing state retains a stale trace_event_call pointer in trace_event_file, leading to a use-after-free when tracefs or tracing subsystem operations are later executed. Fix this by checking the return value of __register_event() and only calling __add_event_to_tracers() if event registration succeeded.
Title tracing: Check return value of __register_event() in trace_module_add_events()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-19T16:37:20.725Z

Reserved: 2026-08-15T05:44:03.902Z

Link: CVE-2026-74471

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T13:17:51.847

Modified: 2026-08-19T17:21:04.320

Link: CVE-2026-74471

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-74471 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-18T04:45:04Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference