In the Linux kernel, the following vulnerability has been resolved:
arm64: probes: Remove broken LDR (literal) uprobe support
The simulate_ldr_literal() and simulate_ldrsw_literal() functions are unsafe to use for uprobes. Both functions were originally written for use with kprobes, and access memory with plain C accesses. When uprobes was added, these were reused unmodified even though they cannot safely access user memory.
There are three key problems:
1) The plain C accesses do not have corresponding extable entries, and thus if they encounter a fault the kernel will treat these as unintentional accesses to user memory, resulting in a BUG() which will kill the kernel thread, and likely lead to further issues (e.g. lockup or panic()).
2) The plain C accesses are subject to HW PAN and SW PAN, and so when either is in use, any attempt to simulate an access to user memory will fault. Thus neither simulate_ldr_literal() nor simulate_ldrsw_literal() can do anything useful when simulating a user instruction on any system with HW PAN or SW PAN.
3) The plain C accesses are privileged, as they run in kernel context, and in practice can access a small range of kernel virtual addresses. The instructions they simulate have a range of +/-1MiB, and since the simulated instructions must itself be a user instructions in the TTBR0 address range, these can address the final 1MiB of the TTBR1 acddress range by wrapping downwards from an address in the first 1MiB of the TTBR0 address range.
In contemporary kernels the last 8MiB of TTBR1 address range is reserved, and accesses to this will always fault, meaning this is no worse than (1).
Historically, it was theoretically possible for the linear map or vmemmap to spill into the final 8MiB of the TTBR1 address range, but in practice this is extremely unlikely to occur as this would require either:
* Having enough physical memory to fill the entire linear map all the way to the final 1MiB of the TTBR1 address range.
* Getting unlucky with KASLR randomization of the linear map such that the populated region happens to overlap with the last 1MiB of the TTBR address range.
... and in either case if we were to spill into the final page there would be larger problems as the final page would alias with error pointers.
Practically speaking, (1) and (2) are the big issues. Given there have been no reports of problems since the broken code was introduced, it appears that no-one is relying on probing these instructions with uprobes.
Avoid these issues by not allowing uprobes on LDR (literal) and LDRSW (literal), limiting the use of simulate_ldr_literal() and simulate_ldrsw_literal() to kprobes. Attempts to place uprobes on LDR (literal) and LDRSW (literal) will be rejected as arm_probe_decode_insn() will return INSN_REJECTED. In future we can consider introducing working uprobes support for these instructions, but this will require more significant work.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-uki-virtUpgrade kernel-64k-debug-modules-coreUpgrade kernel-coreUpgrade kernel-devel-matchedUpgrade kernel-zfcpdump-develUpgrade kernel-64k-modules-coreUpgrade kernel-64k-debugUpgrade kernel-64k-modules-extraUpgrade kernel-debug-devel-matchedUpgrade kernel-uki-virt-addonsUpgrade kernel-modulesUpgrade kernel-debug-uki-virtUpgrade kernel-debug-develUpgrade rtlaUpgrade kernel-rt-modules-coreUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debug-modules-extraUpgrade kernel-modules-coreUpgrade rvUpgrade kernel-rt-debug-develUpgrade kernel-rtUpgrade kernel-debug-coreUpgrade perfUpgrade kernel-debugUpgrade kernel-zfcpdumpUpgrade kernel-rt-debug-modules-coreUpgrade kernel-64k-debug-modules-extraUpgrade kernel-develUpgrade kernel-zfcpdump-modules-extraUpgrade libperfUpgrade kernel-modules-extraUpgrade kernel-zfcpdump-modulesUpgrade kernel-64k-develUpgrade kernel-docUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-rt-modulesUpgrade kernel-rt-debug-modulesUpgrade kernel-headersUpgrade kernel-toolsUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-debug-modulesUpgrade kernel-64kUpgrade kernel-debug-modules-coreUpgrade python3-perfUpgrade bpftoolUpgrade kernel-rt-debugUpgrade kernel-abi-stablelistsUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-develUpgrade kernel-tools-libs-develUpgrade kernel-rt-debug-coreUpgrade kernel-rt-modules-extraUpgrade kernel-rt-coreUpgrade kernel-64k-debug-develUpgrade kernel-tools-libsUpgrade kernel-64k-debug-modulesUpgrade kernel-64k-coreUpgrade kernelUpgrade kernel-64k-debug-coreUpgrade kernel-64k-devel-matchedUpgrade kernel-zfcpdump-coreUpgrade kernel-cross-headersUpgrade kernel-64k-modules | Dec 19, 2024 | Nov 5, 2024 |
| Amazon Linux Ami 2 | — | Upgrade bpftoolUpgrade bpftool-debuginfoUpgrade kernel-livepatch-5.10.228-219.884Upgrade kernelUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-develUpgrade perfUpgrade kernel-livepatch-5.15.173-118.169Upgrade kernel-debuginfo-common-aarch64Upgrade kernel-toolsUpgrade kernel-develUpgrade python-perf-debuginfoUpgrade perf-debuginfoUpgrade kernel-debuginfoUpgrade kernel-headersUpgrade python-perf | Mar 14, 2025 | Nov 5, 2024 |
| Amazon_linux_2023 | — | Upgrade bpftoolUpgrade bpftool-debuginfoUpgrade kernel-livepatch-6.1.115-126.197Upgrade kernel-modules-extra-commonUpgrade perfUpgrade python3-perf-debuginfoUpgrade kernel-libbpf-staticUpgrade kernel-toolsUpgrade kernel-debuginfo-common-aarch64Upgrade kernelUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-develUpgrade kernel-libbpfUpgrade kernel-libbpf-develUpgrade kernel-modules-extraUpgrade python3-perfUpgrade perf-debuginfoUpgrade kernel-headersUpgrade kernel-develUpgrade kernel-debuginfoUpgrade kernel-tools-debuginfo | Mar 27, 2025 | Nov 5, 2024 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Nov 11, 2024 | Nov 5, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernel-tools-libsUpgrade bpftoolUpgrade python3-perfUpgrade kernel-toolsUpgrade kernel-abi-stablelistsUpgrade kernel | Feb 11, 2025 | Nov 5, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-toolsUpgrade python3-perfUpgrade bpftoolUpgrade kernel-tools-libsUpgrade kernel-abi-stablelistsUpgrade kernel | Feb 11, 2025 | Nov 5, 2024 |
| Oracle_linux | — | Upgrade kernelUpgrade kernel-uek | Dec 12, 2024 | Nov 5, 2024 |
| Redhat_linux | — | Upgrade kernelUpgrade kernel-rt | Feb 10, 2025 | Nov 5, 2024 |
| Rocky_linux | — | Upgrade perf-debuginfoUpgrade kernel-debug-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-develUpgrade kernel-tools-debuginfoUpgrade kernel-rt-debug-develUpgrade kernel-rt-debug-kvmUpgrade kernel-rt-modulesUpgrade perfUpgrade kernel-rt-debuginfoUpgrade kernel-coreUpgrade bpftool-debuginfoUpgrade kernel-debug-debuginfoUpgrade kernel-toolsUpgrade kernel-debugUpgrade kernel-rtUpgrade kernel-modulesUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debug-modules-extraUpgrade kernel-modules-extraUpgrade kernel-cross-headersUpgrade kernel-debug-develUpgrade kernel-rt-debugUpgrade kernel-headersUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-rt-coreUpgrade kernel-rt-kvmUpgrade python3-perfUpgrade kernel-debug-modulesUpgrade python3-perf-debuginfoUpgrade kernel-tools-libs-develUpgrade kernel-debuginfoUpgrade kernel-rt-develUpgrade kernel-rt-debug-coreUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-libsUpgrade kernelUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-modules-extraUpgrade bpftool | Feb 5, 2026 | Dec 19, 2024 |
| Ubuntu | — | Upgrade linux-image-raspi2Upgrade linux-image-oem-24.04aUpgrade linux-image-raspi-nolpaeUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-5.15.0-1072-nvidiaUpgrade linux-image-oemUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-5.15.0-1080-awsUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-5.4.0-208-lowlatencyUpgrade linux-image-azure-lts-20.04Upgrade linux-image-6.8.0-1024-nvidia-lowlatencyUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-oem-24.04Upgrade linux-image-5.4.0-1127-kvmUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-5.15.0-134-generic-lpaeUpgrade linux-image-5.15.0-1044-xilinx-zynqmpUpgrade linux-image-6.8.0-1024-nvidiaUpgrade linux-image-gcpUpgrade linux-image-awsUpgrade linux-image-6.8.0-1026-gcpUpgrade linux-image-gkeUpgrade linux-image-realtimeUpgrade linux-image-6.8.0-1027-awsUpgrade linux-image-5.4.0-1048-iotUpgrade linux-image-6.11.0-1009-gcpUpgrade linux-image-oem-24.04bUpgrade linux-image-kvmUpgrade linux-image-intel-iotgUpgrade linux-image-6.8.0-57-generic-64kUpgrade linux-image-5.15.0-133-lowlatencyUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-5.15.0-1077-gcpUpgrade linux-image-6.8.0-1024-oemUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-5.15.0-1070-ibmUpgrade linux-image-5.15.0-1078-awsUpgrade linux-image-aws-lts-24.04Upgrade linux-image-virtualUpgrade linux-image-6.8.0-56-generic-64kUpgrade linux-image-5.4.0-1145-azureUpgrade linux-image-5.4.0-1140-awsUpgrade linux-image-bluefieldUpgrade linux-image-5.15.0-133-lowlatency-64kUpgrade linux-image-6.8.0-1024-nvidia-64kUpgrade linux-image-oem-osp1Upgrade linux-image-6.11.0-1005-realtimeUpgrade linux-image-raspi-realtimeUpgrade linux-image-6.8.0-57-genericUpgrade linux-image-6.8.0-1022-ibmUpgrade linux-image-fipsUpgrade linux-image-5.4.0-1116-fipsUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-6.8.0-56-lowlatency-64kUpgrade linux-image-6.8.0-1021-gkeUpgrade linux-image-5.15.0-1075-oracleUpgrade linux-image-azure-cvmUpgrade linux-image-oem-22.04dUpgrade linux-image-5.15.0-134-generic-64kUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-6.8.0-2023-raspi-realtimeUpgrade linux-image-oem-20.04dUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-6.11.0-1010-lowlatency-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-5.15.0-1060-gkeopUpgrade linux-image-oem-20.04Upgrade linux-image-6.8.0-1028-raspiUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-6.8.0-1026-gcp-64kUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-virtual-hwe-18.04Upgrade linux-image-5.15.0-1072-nvidia-lowlatencyUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-oracleUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1075-gkeUpgrade linux-image-lowlatency-64kUpgrade linux-image-azure-nvidiaUpgrade linux-image-5.15.0-1033-nvidia-tegraUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-6.8.0-1008-gkeopUpgrade linux-image-5.4.0-1138-oracleUpgrade linux-image-5.15.0-1073-intel-iotgUpgrade linux-image-lowlatencyUpgrade linux-image-6.11.0-1010-lowlatencyUpgrade linux-image-aws-lts-20.04Upgrade linux-image-5.4.0-208-generic-lpaeUpgrade linux-image-6.11.0-1011-oracleUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-5.4.0-1142-awsUpgrade linux-image-nvidia-6.8Upgrade linux-image-6.8.0-1024-nvidia-lowlatency-64kUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-5.4.0-208-genericUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-oem-22.04Upgrade linux-image-intelUpgrade linux-image-6.11.0-1011-oracle-64kUpgrade linux-image-5.4.0-1058-xilinx-zynqmpUpgrade linux-image-6.11.0-18-generic-64kUpgrade linux-image-5.15.0-1021-nvidia-tegra-igxUpgrade linux-image-6.11.0-1009-azure-fdeUpgrade linux-image-6.8.0-1022-oracle-64kUpgrade linux-image-generic-lpaeUpgrade linux-image-oem-20.04cUpgrade linux-image-5.15.0-1033-nvidia-tegra-rtUpgrade linux-image-azureUpgrade linux-image-6.8.0-1025-azure-fdeUpgrade linux-image-5.15.0-134-genericUpgrade linux-image-gkeop-6.8Upgrade linux-image-5.4.0-1143-gcpUpgrade linux-image-5.15.0-1081-azure-fdeUpgrade linux-image-oem-22.04bUpgrade linux-image-nvidia-64kUpgrade linux-image-oracle-64kUpgrade linux-image-nvidia-tegraUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-ibm-classicUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-5.15.0-1081-azureUpgrade linux-image-6.8.0-56-lowlatencyUpgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-5.4.0-1099-bluefieldUpgrade linux-image-generic-64kUpgrade linux-image-azure-lts-24.04Upgrade linux-image-nvidiaUpgrade linux-image-5.15.0-1074-ibmUpgrade linux-image-gke-5.15Upgrade linux-image-raspiUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-oem-22.04aUpgrade linux-image-6.11.0-1009-azureUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.11.0-18-genericUpgrade linux-image-6.8.0-1022-oracleUpgrade linux-image-ibmUpgrade linux-image-gkeopUpgrade linux-image-ibm-lts-20.04Upgrade linux-image-5.4.0-1086-ibmUpgrade linux-image-5.15.0-1072-raspiUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-5.15.0-1021-nvidia-tegra-igx-rtUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-6.11.0-1015-oemUpgrade linux-image-6.8.0-1025-azureUpgrade linux-image-aws-lts-22.04Upgrade linux-image-6.11.0-1008-raspiUpgrade linux-image-oem-22.04cUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-5.15.0-133-genericUpgrade linux-image-6.11.0-1009-awsUpgrade linux-image-genericUpgrade linux-image-5.15.0-133-generic-lpaeUpgrade linux-image-5.15.0-133-generic-64kUpgrade linux-image-5.15.0-1076-kvmUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-gcp-64kUpgrade linux-image-6.8.0-56-genericUpgrade linux-image-oem-20.04bUpgrade linux-image-6.8.0-1025-awsUpgrade linux-image-6.8.1-1018-realtime | Feb 20, 2025 | Nov 5, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 10, 2025 | Nov 5, 2024 |
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