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

fprobe: Fix unregister_fprobe() to wait for RCU grace period

Commit 4346ba1604093 ("fprobe: Rewrite fprobe on function-graph tracer")
changed fprobe to register struct fprobe to an rcu-hlist, but it forgot
to wait for RCU GP. Thus there can be use-after-free if the fprobe is
released right after unregistering. This can be happened on fprobe
event and sample module code.

To fix this issue, add synchronize_rcu() in unregister_fprobe().

Note that BPF is OK because fprobe is used as a part of
bpf_kprobe_multi_link. This unregisters its fprobe in
bpf_kprobe_multi_link_release() and it is deallocated via
bpf_kprobe_multi_link_dealloc(), which is invoked from
bpf_link_defer_dealloc_rcu_gp() RCU callback.

For BPF, this also introduced unregister_fprobe_async() which does
NOT wait for RCU grace priod.
Published: 2026-07-19
Score: n/a
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

In the Linux kernel, the unregister_fprobe() routine failed to wait for the RCU grace period before freeing the probe structure. This omission can cause the kernel to free a probe while it is still being referenced, resulting in a classic use‑after‑free condition that may corrupt kernel memory or trigger a crash. The problem can surface during normal fprobe events or when a custom module registers and immediately unregisters a probe.

Affected Systems

All Linux kernel releases that have not incorporated the RCU wait fix contained in commit 4346ba1604093 are affected. The vulnerability impacts the fprobe mechanism used by the function‑graph tracer and by BPF kprobe multi links. Systems that deploy custom kernel modules that perform dynamic fprobe registration are also potentially exposed.

Risk and Exploitability

The EPSS score is less than 1 %, indicating a low probability of exploitation in the wild, and the vulnerability is not listed in the CISA KEV catalog. Exploitation would require local kernel code manipulation, typically a malicious module or privileged user, as no remote exploitation pathway is described. The CVSS score is not provided, but the inherent severity is high because successful use‑after‑free can lead to privilege escalation or denial of service.

Generated by OpenCVE AI on August 4, 2026 at 06:07 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the kernel to the latest version that includes the RCU synchronization fix (commit 4346ba1604093).
  • Verify that any BPF modules using the async fprobe release path (unregister_fprobe_async) are not relied upon for critical probes, ensuring deallocation occurs via the intended RCU callback.
  • If a kernel upgrade cannot be performed immediately, temporarily disable or avoid dynamic fprobe registration in custom modules until the patch is applied.

Generated by OpenCVE AI on August 4, 2026 at 06:07 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-8593-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8603-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8618-1 Linux kernel vulnerabilities
History

Sun, 26 Jul 2026 08:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362
CWE-416

Tue, 21 Jul 2026 22:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362
CWE-416

Tue, 21 Jul 2026 12:15:00 +0000


Sun, 19 Jul 2026 16:15:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: fprobe: Fix unregister_fprobe() to wait for RCU grace period Commit 4346ba1604093 ("fprobe: Rewrite fprobe on function-graph tracer") changed fprobe to register struct fprobe to an rcu-hlist, but it forgot to wait for RCU GP. Thus there can be use-after-free if the fprobe is released right after unregistering. This can be happened on fprobe event and sample module code. To fix this issue, add synchronize_rcu() in unregister_fprobe(). Note that BPF is OK because fprobe is used as a part of bpf_kprobe_multi_link. This unregisters its fprobe in bpf_kprobe_multi_link_release() and it is deallocated via bpf_kprobe_multi_link_dealloc(), which is invoked from bpf_link_defer_dealloc_rcu_gp() RCU callback. For BPF, this also introduced unregister_fprobe_async() which does NOT wait for RCU grace priod.
Title fprobe: Fix unregister_fprobe() to wait for RCU grace period
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-07-19T15:39:49.679Z

Reserved: 2026-07-19T07:54:57.031Z

Link: CVE-2026-64075

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

Severity :

Publid Date: 2026-07-19T00:00:00Z

Links: CVE-2026-64075 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-04T06:15:04Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference