CVE-2026-43416
Analyzed Analyzed - Analysis Complete
Kernel NULL Pointer Dereference in Linux Kernel perf Subsystem

Publication date: 2026-05-08

Last updated on: 2026-05-26

Assigner: kernel.org

Description
In the Linux kernel, the following vulnerability has been resolved: powerpc, perf: Check that current->mm is alive before getting user callchain It may happen that mm is already released, which leads to kernel panic. This adds the NULL check for current->mm, similarly to commit 20afc60f892d ("x86, perf: Check that current->mm is alive before getting user callchain"). I was getting this panic when running a profiling BPF program (profile.py from bcc-tools): [26215.051935] Kernel attempted to read user page (588) - exploit attempt? (uid: 0) [26215.051950] BUG: Kernel NULL pointer dereference on read at 0x00000588 [26215.051952] Faulting instruction address: 0xc00000000020fac0 [26215.051957] Oops: Kernel access of bad area, sig: 11 [#1] [...] [26215.052049] Call Trace: [26215.052050] [c000000061da6d30] [c00000000020fc10] perf_callchain_user_64+0x2d0/0x490 (unreliable) [26215.052054] [c000000061da6dc0] [c00000000020f92c] perf_callchain_user+0x1c/0x30 [26215.052057] [c000000061da6de0] [c0000000005ab2a0] get_perf_callchain+0x100/0x360 [26215.052063] [c000000061da6e70] [c000000000573bc8] bpf_get_stackid+0x88/0xf0 [26215.052067] [c000000061da6ea0] [c008000000042258] bpf_prog_16d4ab9ab662f669_do_perf_event+0xf8/0x274 [...] In addition, move storing the top-level stack entry to generic perf_callchain_user to make sure the top-evel entry is always captured, even if current->mm is NULL. [Maddy: fixed message to avoid checkpatch format style error]
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-05-08
Last Modified
2026-05-26
Generated
2026-06-19
AI Q&A
2026-05-08
EPSS Evaluated
2026-06-18
NVD
EUVD
Affected Vendors & Products
Showing 5 associated CPEs
Vendor Product Version / Range
linux linux_kernel 7.0
linux linux_kernel 7.0
linux linux_kernel 7.0
linux linux_kernel From 6.19 (inc) to 6.19.9 (exc)
linux linux_kernel From 2.6.32 (inc) to 6.18.19 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-476 The product dereferences a pointer that it expects to be valid but is NULL.
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Executive Summary

This vulnerability exists in the Linux kernel's powerpc perf subsystem. It occurs because the kernel does not properly check if the current process's memory descriptor (current->mm) is still valid before attempting to access the user callchain for profiling.

If current->mm has already been released (i.e., is NULL), the kernel tries to read from an invalid memory area, causing a kernel panic due to a NULL pointer dereference.

The fix involves adding a NULL check for current->mm before accessing the user callchain, preventing the kernel from crashing in this scenario.

Impact Analysis

This vulnerability can cause the Linux kernel to panic and crash when running profiling tools that use the perf subsystem, such as BPF programs.

A kernel panic leads to system instability and downtime, which can disrupt services and applications running on the affected system.

In environments where uptime and reliability are critical, this vulnerability could result in significant operational impact.

Detection Guidance

This vulnerability can be detected by monitoring kernel logs for signs of kernel panic or NULL pointer dereference related to perf callchain user events.

Specifically, look for messages similar to the following in your kernel logs:

  • Kernel attempted to read user page (exploit attempt?)
  • BUG: Kernel NULL pointer dereference on read
  • Oops: Kernel access of bad area, sig: 11

You can use the following commands to check for such messages:

  • dmesg | grep -i 'NULL pointer dereference'
  • journalctl -k | grep -i 'perf_callchain_user'
  • grep -i 'Kernel attempted to read user page' /var/log/kern.log

Additionally, if you are running profiling BPF programs (such as profile.py from bcc-tools), monitor their behavior closely as they may trigger this vulnerability.

Mitigation Strategies

The immediate mitigation step is to update the Linux kernel to a version that includes the fix for this vulnerability.

The fix involves adding a NULL check for current->mm before accessing the user callchain in the perf subsystem, preventing kernel panic.

Until the kernel is updated, avoid running profiling BPF programs that trigger this vulnerability, such as profile.py from bcc-tools.

Monitoring kernel logs for early signs of the issue can help in taking timely action.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-43416. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart