CVE-2026-43409
Medium · 5.5CVSS
5.5
EPSS
0.1%
Published
May 8, 2026
CISA due date
—
Cloudanix analysis
A local user with enough system privileges could crash an affected Linux machine by triggering a bug in kernel tracing during module changes.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Medium
What it actually does
This is a local Linux kernel denial-of-service flaw in the interaction between kprobes and ftrace. If ftrace has been disabled internally after an error, subsequent removal or insertion of kernel modules that have kprobes associated with ftrace can trigger an invalid memory access in the kprobes module notifier path, causing a kernel oops or crash. The primary impact is loss of availability; the vulnerability does not directly provide confidentiality or integrity compromise based on the published details.
Why it matters to the business
Successful exploitation can crash affected Linux systems, interrupting workloads, applications, and infrastructure services running on those hosts. Because exploitation requires local access and the ability to interact with kernel tracing/module functionality, this is most relevant for multi-user Linux systems, developer/build hosts, systems allowing privileged containers or module operations, and environments where untrusted users can obtain elevated Linux capabilities. It is not listed in CISA KEV, has no known ransomware association, and has very low EPSS, so broad internet-scale exploitation is unlikely, but the operational impact of a crash can still be significant for critical servers.
How an attack unfolds
An attacker first needs local execution on an affected Linux host with sufficient privileges or Linux capabilities to manipulate tracing/kprobe state and trigger kernel module load or unload activity. The attacker causes or waits for ftrace to enter a killed/disabled state after an internal error, leaving the kprobe/ftrace integration in a vulnerable condition. They then remove or insert a module associated with kprobe probes, for example through rmmod, insmod, or modprobe. During module notification handling, the kernel reaches the kprobes module callback and attempts ftrace-related operations despite ftrace being disabled, resulting in an invalid memory access and a kernel crash. The exploit outcome is service disruption rather than code execution according to the available advisory information.
How to fix it
Upgrade the Linux kernel to a vendor-supported release that includes the upstream fix for the kprobes/ftrace module callback handling. No exact fixed package versions were provided in the input, so use the relevant distribution vendor advisory and install the latest patched kernel for each affected release stream, then reboot into the updated kernel. As mitigations until patching is complete, restrict local shell access, limit sudo rights for module and tracing operations, prevent untrusted users and containers from receiving capabilities such as CAP_SYS_MODULE, CAP_SYS_ADMIN, or access to kernel tracing interfaces, disable unnecessary kernel module loading where operationally feasible, and restrict access to /sys/kernel/debug/tracing and /sys/kernel/tracing.
How to confirm the fix worked
Confirm that systems are running a patched kernel from the relevant Linux distribution or vendor advisory, not merely that the package has been installed. Validate with uname -r, package manager kernel version checks, and a reboot verification step. Review whether untrusted users can execute rmmod, insmod, modprobe, or write to kprobe tracing interfaces. Where safe in a non-production test environment, reproduce the previously vulnerable sequence using kprobes/ftrace and module unload/load operations to confirm the kernel no longer crashes. Also confirm that debugfs/tracing mounts and Linux capabilities are appropriately restricted for non-administrative users and containers.
Typical attack path
- Obtain local shell access on an affected Linux system.
- Acquire or abuse privileges/capabilities that permit kernel tracing, kprobe interaction, or kernel module load/unload operations.
- Create or manipulate kprobes that use ftrace, or target a system where such probes already exist.
- Cause ftrace to enter a killed/disabled state due to an error condition.
- Run module insertion or removal operations such as insmod, rmmod, or modprobe against a module associated with kprobes.
- Trigger the vulnerable kprobes module callback path and crash the kernel, causing denial of service.
How to detect it
Look for evidence of kernel crashes or oops events around module load/unload activity and tracing/kprobe usage. Useful sources include kernel ring buffer output, journald kernel logs, syslog, auditd, EDR telemetry, crash dump infrastructure, sudo logs, shell history, and container runtime logs for privileged capability use. Search for kernel oops traces containing kprobes_module_callback, ftrace_kill, __do_sys_delete_module, rmmod, insmod, or modprobe near the time of a reboot, panic, watchdog reset, or service outage. In audit logs, review executions of /sbin/rmmod, /sbin/insmod, /sbin/modprobe, writes to kprobe_events, and suspicious access to /sys/kernel/debug/tracing or /sys/kernel/tracing by non-standard users, automation, or containers. If crash dumps are available, inspect the stack trace for the kprobes module notifier path and correlate it with recent module operations and ftrace errors.
- kprobes_module_callback
- RIP: 0010:kprobes_module_callback
- __do_sys_delete_module
- blocking_notifier_call_chain
- notifier_call_chain
- ftrace_kill
- kprobe_ftrace_disabled
- __disarm_kprobe_ftrace
- BUG: unable to handle page fault
- Oops: Oops: 0000
- Comm: rmmod
- /sbin/rmmod
- /usr/sbin/rmmod
- /sbin/insmod
- /usr/sbin/insmod
- /sbin/modprobe
- /usr/sbin/modprobe
- /sys/kernel/debug/tracing/kprobe_events
- /sys/kernel/tracing/kprobe_events
What your security team should do
- Inventory Linux systems running affected kernel versions and prioritize systems that allow local users, privileged containers, kernel module management, or tracing/debug access.
- Apply vendor kernel updates that include the kprobes/ftrace fix and reboot systems into the patched kernel.
- Temporarily restrict rmmod, insmod, modprobe, kprobe, ftrace, debugfs, and tracing access to trusted administrators only.
- Audit sudoers, container runtime profiles, and Linux capabilities to ensure untrusted workloads do not have CAP_SYS_MODULE, CAP_SYS_ADMIN, or equivalent host-level privileges.
- Monitor kernel logs for crashes referencing kprobes_module_callback, ftrace_kill, rmmod, insmod, or module notifier call traces.
- Treat unexpected kernel oops/panic events during module unload/load activity as potential exploitation or unsafe local activity and preserve logs for investigation.
The record
In the Linux kernel, the following vulnerability has been resolved: kprobes: avoid crash when rmmod/insmod after ftrace killed After we hit ftrace is killed by some errors, the kernel crash if we remove modules in which kprobe probes. BUG: unable to handle page fault for address: fffffbfff805000d PGD 817fcc067 P4D 817fcc067 PUD 817fc8067 PMD 101555067 PTE 0 Oops: Oops: 0000 [#1] SMP KASAN PTI CPU: 4 UID: 0 PID: 2012 Comm: rmmod Tainted: G W OE Tainted: [W]=WARN, [O]=OOT_MODULE, [E]=UNSIGNED_MODULE RIP: 0010:kprobes_module_callback+0x89/0x790 RSP: 0018:ffff88812e157d30 EFLAGS: 00010a02 RAX: 1ffffffff805000d RBX: dffffc0000000000 RCX: ffffffff86a8de90 RDX: ffffed1025c2af9b RSI: 0000000000000008 RDI: ffffffffc0280068 RBP: 0000000000000000 R08: 0000000000000001 R09: ffffed1025c2af9a R10: ffff88812e157cd7 R11: 205d323130325420 R12: 0000000000000002 R13: ffffffffc0290488 R14: 0000000000000002 R15: ffffffffc0280040 FS: 00007fbc450dd740(0000) GS:ffff888420331000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: fffffbfff805000d CR3: 000000010f624000 CR4: 00000000000006f0 Call Trace: <TASK> notifier_call_chain+0xc6/0x280 blocking_notifier_call_chain+0x60/0x90 __do_sys_delete_module.constprop.0+0x32a/0x4e0 do_syscall_64+0x5d/0xfa0 entry_SYSCALL_64_after_hwframe+0x76/0x7e This is because the kprobe on ftrace does not correctly handles the kprobe_ftrace_disabled flag set by ftrace_kill(). To prevent this error, check kprobe_ftrace_disabled in __disarm_kprobe_ftrace() and skip all ftrace related operations.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-62966 ESPAsyncWebServer is an asynchronous HTTP and WebSocket server library for ESP32… CWE-476
- CVE-2026-59993 Picotls is a TLS protocol library that allows users select different crypto backends… CWE-476
- CVE-2026-62298 mouse07410/asn1c is an ASN.1 compiler. CWE-476
- CVE-2026-119842 A flaw was found in GStreamer's gst-plugins-base MicroDVD subtitle parser. CWE-476
- CVE-2026-120046 Nezha 2.0.0 before 2.4.0 contains a NULL pointer dereference vulnerability in… CWE-476
- CVE-2026-119728 A flaw was found in the H.264 video parser in gst-plugins-bad. CWE-476
- CVE-2026-119760 sniproxy through 0.7.0 contains a NULL pointer dereference vulnerability in… CWE-476
- CVE-2026-105924 A NULL pointer dereference vulnerability in the Qt QCborValue to JSON conversion of the… CWE-476