In the Linux kernel, the following vulnerability has been resolved:
perf: sched: Fix perf crash with new is_user_task() helper
In order to do a user space stacktrace the current task needs to be a user task that has executed in user space. It use to be possible to test if a task is a user task or not by simply checking the task_struct mm field. If it was non NULL, it was a user task and if not it was a kernel task.
But things have changed over time, and some kernel tasks now have their own mm field.
An idea was made to instead test PF_KTHREAD and two functions were used to wrap this check in case it became more complex to test if a task was a user task or not[1]. But this was rejected and the C code simply checked the PF_KTHREAD directly.
It was later found that not all kernel threads set PF_KTHREAD. The io-uring helpers instead set PF_USER_WORKER and this needed to be added as well.
But checking the flags is still not enough. There's a very small window when a task exits that it frees its mm field and it is set back to NULL. If perf were to trigger at this moment, the flags test would say its a user space task but when perf would read the mm field it would crash with at NULL pointer dereference.
Now there are flags that can be used to test if a task is exiting, but they are set in areas that perf may still want to profile the user space task (to see where it exited). The only real test is to check both the flags and the mm field.
Instead of making this modification in every location, create a new is_user_task() helper function that does all the tests needed to know if it is safe to read the user space memory or not.
[1] https://lore.kernel.org/all/[email protected]/
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade bpftool6.12Upgrade perf6.12Upgrade bpftool6.12-debuginfoUpgrade kernel-livepatch-6.12.73-95.123Upgrade kernel6.12-libbpf-develUpgrade kernel6.12-headersUpgrade kernel6.12Upgrade kernel6.12-libbpf-debuginfoUpgrade kernel6.12-toolsUpgrade kernel6.12-develUpgrade kernel6.12-modules-extraUpgrade kernel6.12-libbpfUpgrade kernel6.12-tools-debuginfoUpgrade kernel6.12-debuginfoUpgrade python3-perf6.12Upgrade perf6.12-debuginfoUpgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.12-tools-develUpgrade kernel6.12-libbpf-staticUpgrade kernel6.12-modules-extra-commonUpgrade kernel6.12-debuginfo-common-x86_64Upgrade python3-perf6.12-debuginfo | Mar 27, 2026 | Feb 14, 2026 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Oracle_linux | — | Upgrade kernel-uek | Mar 25, 2026 | Feb 14, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Feb 14, 2026 |
| Ubuntu | — | Upgrade linux-image-realtime-6.17Upgrade linux-image-6.8.0-1056-azureUpgrade linux-image-oem-24.04aUpgrade linux-image-oem-24.04cUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-kvmUpgrade linux-image-raspi-6.8Upgrade linux-image-realtimeUpgrade linux-image-fips-6.8Upgrade linux-image-gkeUpgrade linux-image-gke-6.8Upgrade linux-image-xilinxUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-azure-fipsUpgrade linux-image-6.17.0-1019-oracleUpgrade linux-image-gcp-6.17Upgrade linux-image-virtual-6.8Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-realtime-6.8.1Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-oem-6.17Upgrade linux-image-6.8.0-1024-nvidia-tegra-rtUpgrade linux-image-6.8.0-1024-nvidia-tegraUpgrade linux-image-6.8.0-1054-nvidia-lowlatencyUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-aws-fips-6.8Upgrade linux-image-nvidia-6.8Upgrade linux-image-6.17.0-1021-gcpUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-6.17.0-1021-gcp-64kUpgrade linux-image-gke-64k-6.8Upgrade linux-image-azureUpgrade linux-image-intel-iotgUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-6.8.0-1058-gcp-fipsUpgrade linux-image-aws-lts-24.04Upgrade linux-image-6.8.0-1054-nvidia-64kUpgrade linux-image-6.8.0-1054-nvidiaUpgrade linux-image-6.8.0-1055-aws-64kUpgrade linux-image-6.17.0-1031-nvidia-64kUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-azure-6.8Upgrade linux-image-xilinx-6.8Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-6.8.0-1055-awsUpgrade linux-image-azure-fips-6.8Upgrade linux-image-gcpUpgrade linux-image-aws-6.8Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-nvidia-64k-6.17Upgrade linux-image-oem-24.04dUpgrade linux-image-6.8.1-1051-realtimeUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-raspiUpgrade linux-image-gke-64kUpgrade linux-image-raspi-realtimeUpgrade linux-image-6.8.0-1056-raspiUpgrade linux-image-nvidia-6.17Upgrade linux-image-nvidia-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-aws-64k-6.8Upgrade linux-image-gcp-fipsUpgrade linux-image-oracle-64kUpgrade linux-image-gcp-64kUpgrade linux-image-generic-64k-6.8Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-6.8.0-1059-azureUpgrade linux-image-6.8.0-1054-gkeUpgrade linux-image-6.8.0-1055-ibmUpgrade linux-image-6.8.0-1054-gke-64kUpgrade linux-image-gkeopUpgrade linux-image-gcp-64k-6.17Upgrade linux-image-azure-6.17Upgrade linux-image-6.8.0-117-lowlatencyUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-generic-6.8Upgrade linux-image-nvidia-hwe-24.04Upgrade linux-image-6.8.0-1055-aws-fipsUpgrade linux-image-nvidiaUpgrade linux-image-lowlatency-64kUpgrade linux-image-fipsUpgrade linux-image-6.8.0-1058-gcp-64kUpgrade linux-image-ibm-classicUpgrade linux-image-6.8.0-1054-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1041-gkeopUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-ibm-6.8Upgrade linux-image-6.8.0-116-fipsUpgrade linux-image-oracleUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-azure-fde-6.17Upgrade linux-image-6.8.0-117-lowlatency-64kUpgrade linux-image-virtualUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-nvidia-tegraUpgrade linux-image-lowlatency-6.8Upgrade linux-image-ibmUpgrade linux-image-aws-fipsUpgrade linux-image-6.8.0-117-generic-64kUpgrade linux-image-6.8.0-117-genericUpgrade linux-image-6.17.0-1019-oracle-64kUpgrade linux-image-oracle-6.17Upgrade linux-image-oem-24.04Upgrade linux-image-nvidia-64k-hwe-24.04Upgrade linux-image-6.17.0-1018-azure-fdeUpgrade linux-image-azure-fdeUpgrade linux-image-6.17.0-1031-nvidiaUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1032-xilinxUpgrade linux-image-6.8.0-1058-gcpUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-6.17.0-1030-oemUpgrade linux-image-oem-24.04bUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-genericUpgrade linux-image-6.8.0-1059-azure-fipsUpgrade linux-image-gkeop-6.8Upgrade linux-image-generic-64kUpgrade linux-image-6.17.0-1021-azureUpgrade linux-image-generic-lpaeUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-gcp-6.8Upgrade linux-image-azure-lts-24.04Upgrade linux-image-oracle-64k-6.17Upgrade linux-image-6.8.0-2045-raspi-realtimeUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-6.17.0-1018-realtime | May 25, 2026 | May 19, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub