In the Linux kernel, the following vulnerability has been resolved:
x86/mm: Disallow vsyscall page read for copy_from_kernel_nofault()
When trying to use copy_from_kernel_nofault() to read vsyscall page through a bpf program, the following oops was reported:
BUG: unable to handle page fault for address: ffffffffff600000 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 3231067 P4D 3231067 PUD 3233067 PMD 3235067 PTE 0 Oops: 0000 [#1] PREEMPT SMP PTI CPU: 1 PID: 20390 Comm: test_progs ...... 6.7.0+ #58 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996) ...... RIP: 0010:copy_from_kernel_nofault+0x6f/0x110 ...... Call Trace: <TASK> ? copy_from_kernel_nofault+0x6f/0x110 bpf_probe_read_kernel+0x1d/0x50 bpf_prog_2061065e56845f08_do_probe_read+0x51/0x8d trace_call_bpf+0xc5/0x1c0 perf_call_bpf_enter.isra.0+0x69/0xb0 perf_syscall_enter+0x13e/0x200 syscall_trace_enter+0x188/0x1c0 do_syscall_64+0xb5/0xe0 entry_SYSCALL_64_after_hwframe+0x6e/0x76 </TASK> ...... ---[ end trace 0000000000000000 ]---
The oops is triggered when:
1) A bpf program uses bpf_probe_read_kernel() to read from the vsyscall page and invokes copy_from_kernel_nofault() which in turn calls __get_user_asm().
2) Because the vsyscall page address is not readable from kernel space, a page fault exception is triggered accordingly.
3) handle_page_fault() considers the vsyscall page address as a user space address instead of a kernel space address. This results in the fix-up setup by bpf not being applied and a page_fault_oops() is invoked due to SMAP.
Considering handle_page_fault() has already considered the vsyscall page address as a userspace address, fix the problem by disallowing vsyscall page read for copy_from_kernel_nofault().
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-coreUpgrade kernel-debug-develUpgrade kernel-rt-develUpgrade kernel-develUpgrade kernel-modules-extraUpgrade kernelUpgrade python3-perfUpgrade kernel-headersUpgrade kernel-rt-debug-modulesUpgrade kernel-cross-headersUpgrade kernel-modulesUpgrade kernel-zfcpdump-develUpgrade perfUpgrade kernel-rt-coreUpgrade kernel-debug-coreUpgrade kernel-rt-debug-develUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-rt-debugUpgrade kernel-rt-debug-kvmUpgrade kernel-rt-modules-extraUpgrade kernel-debugUpgrade kernel-tools-libsUpgrade kernel-debug-modulesUpgrade kernel-zfcpdumpUpgrade kernel-toolsUpgrade kernel-zfcpdump-coreUpgrade kernel-docUpgrade kernel-rt-debug-modules-extraUpgrade kernel-zfcpdump-modulesUpgrade kernel-rtUpgrade kernel-tools-libs-develUpgrade bpftoolUpgrade kernel-debug-modules-extraUpgrade kernel-rt-kvmUpgrade kernel-rt-debug-coreUpgrade kernel-abi-stablelistsUpgrade kernel-rt-modules | Jul 3, 2024 | Apr 17, 2024 |
| Amazon Linux Ami 2 | — | Upgrade kernelUpgrade bpftoolUpgrade kernel-tools-debuginfoUpgrade kernel-livepatch-5.15.153-100.162Upgrade kernel-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade python-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-headersUpgrade python-perfUpgrade kernel-toolsUpgrade kernel-develUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-tools-develUpgrade kernel-livepatch-5.10.214-202.855Upgrade perf-debuginfoUpgrade perf | Dec 20, 2024 | Apr 17, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-tools-develUpgrade kernel-debuginfoUpgrade kernel-libbpf-develUpgrade kernel-modules-extraUpgrade kernel-headersUpgrade kernel-livepatch-6.1.84-99.169Upgrade perf-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-develUpgrade kernel-libbpf-staticUpgrade kernel-tools-debuginfoUpgrade kernelUpgrade python3-perfUpgrade kernel-libbpfUpgrade python3-perf-debuginfoUpgrade kernel-toolsUpgrade perfUpgrade kernel-modules-extra-commonUpgrade bpftoolUpgrade kernel-debuginfo-common-aarch64Upgrade bpftool-debuginfo | Feb 17, 2025 | Apr 17, 2024 |
| Debian | — | Upgrade linux | May 8, 2024 | Apr 17, 2024 |
| Dell Powerstore Dsa2024398 | — | Upgrade Dell PowerStoreOS to the latest version | Jan 13, 2026 | Sep 17, 2024 |
| Dell Powerstore Dsa2024408 | — | Upgrade Dell PowerStoreOS to the latest version | Jan 13, 2026 | Sep 26, 2024 |
| Oracle_linux | — | Upgrade kernel | Jul 3, 2024 | Apr 17, 2024 |
| Redhat_linux | — | Upgrade kernelUpgrade kernel-rtNo solution exists | Jul 3, 2024 | Apr 17, 2024 |
| Rocky_linux | — | Upgrade kernel-coreUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debugUpgrade kernel-debug-debuginfoUpgrade kernel-modules-extraUpgrade kernel-rt-debug-develUpgrade kernel-debug-modules-extraUpgrade perf-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernelUpgrade kernel-debug-develUpgrade kernel-rt-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-modulesUpgrade kernel-tools-debuginfoUpgrade kernel-rt-debug-kvmUpgrade kernel-headersUpgrade kernel-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-debug-coreUpgrade python3-perf-debuginfoUpgrade kernel-rt-modulesUpgrade kernel-rt-kvmUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-toolsUpgrade kernel-tools-libs-develUpgrade kernel-rt-modules-extraUpgrade kernel-debug-modulesUpgrade kernel-rt-develUpgrade perfUpgrade kernel-develUpgrade kernel-rt-debuginfoUpgrade kernel-tools-libsUpgrade kernel-rt-debug-debuginfoUpgrade python3-perfUpgrade bpftoolUpgrade kernel-rtUpgrade kernel-rt-debug-coreUpgrade kernel-rt-debugUpgrade kernel-cross-headers | Jul 16, 2024 | Apr 17, 2024 |
| Suse | — | Upgrade kselftests-kmp-azureUpgrade ocfs2-kmp-defaultUpgrade kernel-azure-optionalUpgrade kernel-default-livepatchUpgrade dtb-qcomUpgrade gfs2-kmp-rtUpgrade kernel-macrosUpgrade kernel-obs-qaUpgrade dtb-freescaleUpgrade kernel-source-azureUpgrade dtb-broadcomUpgrade dtb-amazonUpgrade dtb-exynosUpgrade cluster-md-kmp-rtUpgrade dlm-kmp-64kbUpgrade kernel-docs-htmlUpgrade dtb-amlogicUpgrade dtb-lgUpgrade kernel-sourceUpgrade kernel-source-rtUpgrade kernel-kvmsmall-vdsoUpgrade kernel-64kbUpgrade kernel-default-optionalUpgrade dtb-hisiliconUpgrade kernel-azure-develUpgrade gfs2-kmp-azureUpgrade ocfs2-kmp-rtUpgrade kernel-rt-optionalUpgrade ocfs2-kmp-64kbUpgrade kernel-default-vdsoUpgrade kernel-rtUpgrade dtb-appleUpgrade kernel-kvmsmall-develUpgrade cluster-md-kmp-azureUpgrade kernel-kvmsmall-livepatch-develUpgrade dtb-caviumUpgrade reiserfs-kmp-64kbUpgrade kernel-azure-livepatch-develUpgrade dtb-xilinxUpgrade kernel-preemptUpgrade dtb-allwinnerUpgrade kernel-kvmsmallUpgrade kselftests-kmp-64kbUpgrade dtb-apmUpgrade kernel-default-develUpgrade kernel-zfcpdumpUpgrade gfs2-kmp-64kbUpgrade kernel-rt-livepatchUpgrade kernel-rt_debug-develUpgrade kernel-default-extraUpgrade kernel-devel-azureUpgrade kernel-64kb-livepatch-develUpgrade kernel-develUpgrade dtb-alteraUpgrade kernel-symsUpgrade kernel-azure-extraUpgrade kernel-syms-azureUpgrade kernel-64kb-optionalUpgrade kernel-debugUpgrade dtb-marvellUpgrade kernel-64kb-develUpgrade kselftests-kmp-defaultUpgrade kernel-rt-livepatch-develUpgrade dtb-sprdUpgrade dtb-amdUpgrade kernel-debug-develUpgrade cluster-md-kmp-64kbUpgrade kernel-defaultUpgrade kernel-preempt-develUpgrade dtb-rockchipUpgrade cluster-md-kmp-defaultUpgrade kernel-default-baseUpgrade kernel-rt_debugUpgrade dtb-nvidiaUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-rt-vdsoUpgrade kernel-rt-develUpgrade kernel-default-base-rebuildUpgrade dtb-armUpgrade dtb-mediatekUpgrade reiserfs-kmp-azureUpgrade kernel-syms-rtUpgrade kernel-source-vanillaUpgrade kernel-obs-buildUpgrade kernel-debug-vdsoUpgrade kernel-azure-vdsoUpgrade gfs2-kmp-defaultUpgrade dtb-socionextUpgrade dlm-kmp-rtUpgrade kernel-rt-extraUpgrade dtb-renesasUpgrade kernel-default-livepatch-develUpgrade kernel-rt_debug-vdsoUpgrade kernel-docsUpgrade kernel-debug-livepatch-develUpgrade kernel-64kb-extraUpgrade kernel-devel-rtUpgrade dlm-kmp-azureUpgrade kernel-azureUpgrade reiserfs-kmp-rtUpgrade kselftests-kmp-rtUpgrade ocfs2-kmp-azureUpgrade dlm-kmp-defaultUpgrade reiserfs-kmp-default | May 15, 2024 | Apr 17, 2024 |
| Ubuntu | — | Upgrade linux-image-oem-20.04Upgrade linux-image-5.15.0-1058-raspiUpgrade linux-image-5.15.0-112-generic-64kUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-intel-iotgUpgrade linux-image-oem-20.04cUpgrade linux-image-kvmUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1060-kvmUpgrade linux-image-5.15.0-1060-gkeUpgrade linux-image-raspi-nolpaeUpgrade linux-image-5.15.0-1065-azure-fdeUpgrade linux-image-5.15.0-1046-gkeopUpgrade linux-image-5.15.0-1058-nvidiaUpgrade linux-image-5.15.0-1056-ibmUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-awsUpgrade linux-image-gkeUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-5.15.0-1066-azureUpgrade linux-image-5.15.0-113-generic-lpaeUpgrade linux-image-5.15.0-112-generic-lpaeUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-5.15.0-110-lowlatency-64kUpgrade linux-image-5.15.0-1058-intel-iotgUpgrade linux-image-5.15.0-1057-ibmUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-oem-20.04dUpgrade linux-image-5.15.0-1030-xilinx-zynqmpUpgrade linux-image-5.15.0-1061-oracleUpgrade linux-image-raspiUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-generic-64kUpgrade linux-image-5.15.0-1062-gcpUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-lowlatencyUpgrade linux-image-azure-lts-22.04Upgrade linux-image-genericUpgrade linux-image-gkeopUpgrade linux-image-gcpUpgrade linux-image-virtualUpgrade linux-image-5.15.0-1063-awsUpgrade linux-image-5.15.0-110-lowlatencyUpgrade linux-image-5.15.0-113-generic-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-ibmUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-generic-lpaeUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-5.15.0-112-genericUpgrade linux-image-5.15.0-113-genericUpgrade linux-image-nvidiaUpgrade linux-image-5.15.0-1058-nvidia-lowlatencyUpgrade linux-image-gke-5.15Upgrade linux-image-aws-lts-22.04Upgrade linux-image-oem-20.04bUpgrade linux-image-intelUpgrade linux-image-lowlatency-64k-hwe-20.04 | Jul 1, 2024 | Apr 17, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Apr 17, 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