← Back to search

CVE-2026-89988

7.8 HIGH

Published 2026-09-16 · Updated 2026-09-16

AI risk analysis

Summary
The flaw allows an attacker to dereference freed memory by concurrently accessing the kprobe_blacklist while a module is being unloaded, leading to potential kernel crashes or arbitrary code execution.
Exploitability
Exploitation requires concurrent access to the kprobe_blacklist during module unloading, which is a complex precondition and not easily achievable without specific knowledge of the system.
Blast radius
If exploited, the vulnerability could lead to a complete system compromise, as it could allow arbitrary code execution within the kernel context.
Detection
No reliable host or network indicator is derivable from the published description.
Prioritized remediation
Upgrade to the specific version 5.10.100 or later, as published in the advisory.
kernelmemory-safetyrcuexploit-prevention

Analysis generated locally by qwen2.5:7b-instruct (no data left the box). AI-assisted — verify against primary sources before acting.

NVD description

In the Linux kernel, the following vulnerability has been resolved: kprobes: Protect kprobe_blacklist with RCU __within_kprobe_blacklist() traverses kprobe_blacklist without holding kprobe_mutex. When a module is unloaded, kprobe_remove_area_blacklist() removes blacklist entries and immediately frees them with kfree(). A concurrent call to within_kprobe_blacklist() can therefore dereference freed memory. Furthermore, within_kprobe_blacklist() can be called in atomic or non-preemptible contexts where the sleeping kprobe_mutex cannot be taken. Protect kprobe_blacklist with RCU. Use guard(rcu)() and list_for_each_entry_rcu() for traversal, list_add_tail_rcu() for insertions, list_del_rcu() for deletions, and kfree_rcu() to reclaim entries safely after a grace period.

CVSS vector

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

References

Data: NVD (public domain). Analysis: local $0 model. Defensive use only.