CVEvulnerability
CVE-2026-89988
7.8 HIGH
Official page ↗
- Status
- Received
- Published
- 2026-09-16
- Last modified
- 2026-10-19
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- CVSS 3.1 (416baaa9-dc9f-4396-8d5f-8c081fb06d67)
- 7.8 HIGH — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
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.
References
- https://git.kernel.org/stable/c/0c4256196b3a105307e2235fbfd85e768bbcdd0f git.kernel.org
- https://git.kernel.org/stable/c/518d9b5568bb06f86e4434f7a30faa9612ea91ad git.kernel.org
- https://git.kernel.org/stable/c/5da247e4d1e8661d4d6f997101d59967e8994e32 git.kernel.org
- https://git.kernel.org/stable/c/630ed8734a02b992e8a97538179c2ece42c5210f git.kernel.org
- https://git.kernel.org/stable/c/6e62cf983a2bd547e6bbd3f935539233e5f97f8f git.kernel.org
- https://git.kernel.org/stable/c/8f406205003f741225f620f0e357ca0de71d45e3 git.kernel.org