In the Linux kernel, the following vulnerability has been resolved:
cifs: Fix use-after-free in rdata->read_into_pages()
When the network status is unstable, use-after-free may occur when read data from the server.
BUG: KASAN: use-after-free in readpages_fill_pages+0x14c/0x7e0
Call Trace: <TASK> dump_stack_lvl+0x38/0x4c print_report+0x16f/0x4a6 kasan_report+0xb7/0x130 readpages_fill_pages+0x14c/0x7e0 cifs_readv_receive+0x46d/0xa40 cifs_demultiplex_thread+0x121c/0x1490 kthread+0x16b/0x1a0 ret_from_fork+0x2c/0x50 </TASK>
Allocated by task 2535: kasan_save_stack+0x22/0x50 kasan_set_track+0x25/0x30 __kasan_kmalloc+0x82/0x90 cifs_readdata_direct_alloc+0x2c/0x110 cifs_readdata_alloc+0x2d/0x60 cifs_readahead+0x393/0xfe0 read_pages+0x12f/0x470 page_cache_ra_unbounded+0x1b1/0x240 filemap_get_pages+0x1c8/0x9a0 filemap_read+0x1c0/0x540 cifs_strict_readv+0x21b/0x240 vfs_read+0x395/0x4b0 ksys_read+0xb8/0x150 do_syscall_64+0x3f/0x90 entry_SYSCALL_64_after_hwframe+0x72/0xdc
Freed by task 79: kasan_save_stack+0x22/0x50 kasan_set_track+0x25/0x30 kasan_save_free_info+0x2e/0x50 __kasan_slab_free+0x10e/0x1a0 __kmem_cache_free+0x7a/0x1a0 cifs_readdata_release+0x49/0x60 process_one_work+0x46c/0x760 worker_thread+0x2a4/0x6f0 kthread+0x16b/0x1a0 ret_from_fork+0x2c/0x50
Last potentially related work creation: kasan_save_stack+0x22/0x50 __kasan_record_aux_stack+0x95/0xb0 insert_work+0x2b/0x130 __queue_work+0x1fe/0x660 queue_work_on+0x4b/0x60 smb2_readv_callback+0x396/0x800 cifs_abort_connection+0x474/0x6a0 cifs_reconnect+0x5cb/0xa50 cifs_readv_from_socket.cold+0x22/0x6c cifs_read_page_from_socket+0xc1/0x100 readpages_fill_pages.cold+0x2f/0x46 cifs_readv_receive+0x46d/0xa40 cifs_demultiplex_thread+0x121c/0x1490 kthread+0x16b/0x1a0 ret_from_fork+0x2c/0x50
The following function calls will cause UAF of the rdata pointer.
readpages_fill_pages cifs_read_page_from_socket cifs_readv_from_socket cifs_reconnect __cifs_reconnect cifs_abort_connection mid->callback() --> smb2_readv_callback queue_work(&rdata->work) # if the worker completes first, # the rdata is freed cifs_readv_complete kref_put cifs_readdata_release kfree(rdata) return rdata->... # UAF in readpages_fill_pages()
Similarly, this problem also occurs in the uncache_fill_pages().
Fix this by adjusts the order of condition judgment in the return statement.
CVSS Details
- CVSS 3.1 Base Score: 9.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade perf-debuginfoUpgrade kernel-debuginfoUpgrade kernel-tools-develUpgrade kernel-develUpgrade kernel-headersUpgrade kernel-livepatch-5.10.173-154.642Upgrade kernelUpgrade kernel-tools-debuginfoUpgrade python-perf-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-toolsUpgrade bpftool-debuginfoUpgrade bpftoolUpgrade kernel-livepatch-5.15.102-61.139Upgrade perfUpgrade kernel-debuginfo-common-aarch64Upgrade python-perf | Nov 12, 2024 | May 21, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-headersUpgrade kernel-tools-debuginfoUpgrade kernel-livepatch-6.1.12-17.42Upgrade kernel-debuginfo-common-aarch64Upgrade bpftool-debuginfoUpgrade kernel-develUpgrade kernel-libbpfUpgrade python3-perf-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade bpftoolUpgrade kernel-debuginfoUpgrade kernel-libbpf-develUpgrade kernelUpgrade perf-debuginfoUpgrade kernel-toolsUpgrade perfUpgrade kernel-libbpf-staticUpgrade python3-perfUpgrade kernel-tools-devel | Feb 17, 2025 | May 21, 2024 |
| Debian | — | Upgrade linux | Jul 30, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernelUpgrade kernel-tools-libsUpgrade kernel-abi-stablelistsUpgrade python3-perfUpgrade kernel-tools | Oct 8, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade python3-perfUpgrade kernel-toolsUpgrade bpftoolUpgrade kernel | Oct 9, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernel-toolsUpgrade kernel-tools-libsUpgrade kernelUpgrade python3-perf | Oct 8, 2024 | May 21, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | May 21, 2024 |
| Suse | — | Upgrade kernel-debug-develUpgrade cluster-md-kmp-azureUpgrade kernel-kvmsmall-vdsoUpgrade kernel-64kb-optionalUpgrade ocfs2-kmp-azureUpgrade ocfs2-kmp-defaultUpgrade kernel-azure-vdsoUpgrade kernel-default-develUpgrade dtb-amazonUpgrade dtb-exynosUpgrade dtb-amlogicUpgrade gfs2-kmp-azureUpgrade kernel-azure-livepatch-develUpgrade kernel-docs-htmlUpgrade kernel-sourceUpgrade kernel-source-rtUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-rt_debug-develUpgrade reiserfs-kmp-defaultUpgrade dtb-apmUpgrade kernel-source-azureUpgrade dtb-caviumUpgrade kernel-azure-baseUpgrade kernel-default-vdsoUpgrade kernel-rt-livepatch-develUpgrade kernel-kvmsmallUpgrade kernel-macrosUpgrade kselftests-kmp-azureUpgrade dtb-amdUpgrade dtb-lgUpgrade kernel-64kb-livepatch-develUpgrade ocfs2-kmp-rtUpgrade dtb-alteraUpgrade gfs2-kmp-rtUpgrade kernel-debugUpgrade kernel-rt-optionalUpgrade kernel-zfcpdumpUpgrade kernel-azure-extraUpgrade dtb-broadcomUpgrade dtb-hisiliconUpgrade kernel-symsUpgrade dtb-marvellUpgrade dtb-socionextUpgrade kernel-64kbUpgrade dtb-renesasUpgrade kernel-default-manUpgrade dtb-freescaleUpgrade kernel-obs-qaUpgrade dtb-appleUpgrade kernel-default-livepatchUpgrade gfs2-kmp-64kbUpgrade reiserfs-kmp-64kbUpgrade dlm-kmp-64kbUpgrade kernel-rt_debugUpgrade kernel-syms-azureUpgrade kernel-64kb-develUpgrade kernel-default-extraUpgrade kernel-azure-optionalUpgrade kernel-kvmsmall-develUpgrade ocfs2-kmp-64kbUpgrade kernel-devel-azureUpgrade kselftests-kmp-64kbUpgrade dlm-kmp-rtUpgrade kernel-azure-develUpgrade dtb-rockchipUpgrade kernel-default-baseUpgrade dtb-mediatekUpgrade reiserfs-kmp-azureUpgrade kselftests-kmp-defaultUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-obs-buildUpgrade kernel-rt-develUpgrade kernel-docsUpgrade kernel-rtUpgrade dtb-nvidiaUpgrade kernel-rt-livepatchUpgrade cluster-md-kmp-defaultUpgrade kernel-rt-extraUpgrade kernel-default-livepatch-develUpgrade kernel-64kb-extraUpgrade reiserfs-kmp-rtUpgrade kernel-syms-rtUpgrade kernel-rt_debug-vdsoUpgrade kselftests-kmp-rtUpgrade kernel-debug-livepatch-develUpgrade dtb-sprdUpgrade kernel-default-optionalUpgrade kernel-develUpgrade kernel-source-vanillaUpgrade kernel-default-base-rebuildUpgrade cluster-md-kmp-rtUpgrade kernel-defaultUpgrade dtb-xilinxUpgrade dlm-kmp-azureUpgrade kernel-rt-vdsoUpgrade kernel-debug-vdsoUpgrade cluster-md-kmp-64kbUpgrade dtb-armUpgrade kernel-azureUpgrade dtb-allwinnerUpgrade dlm-kmp-defaultUpgrade dtb-qcomUpgrade kernel-devel-rtUpgrade gfs2-kmp-default | Jun 12, 2024 | May 21, 2024 |
| Ubuntu | — | Upgrade linux-image-5.4.0-1146-awsUpgrade linux-image-virtual-hwe-16.04Upgrade linux-image-ibmUpgrade linux-image-raspi2Upgrade linux-image-virtual-hwe-18.04Upgrade linux-image-4.15.0-2097-azure-fipsUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-5.4.0-1105-bluefieldUpgrade linux-image-gkeUpgrade linux-image-virtualUpgrade linux-image-4.15.0-2118-aws-fipsUpgrade linux-image-kvmUpgrade linux-image-4.4.0-1181-awsUpgrade linux-image-4.15.0-2081-gcp-fipsUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-5.4.0-1151-azure-fipsUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-genericUpgrade linux-image-4.15.0-1173-gcpUpgrade linux-image-5.4.0-1151-azureUpgrade linux-image-gcpUpgrade linux-image-4.15.0-1188-azureUpgrade linux-image-gcp-lts-18.04Upgrade linux-image-4.4.0-268-genericUpgrade linux-image-azure-lts-18.04Upgrade linux-image-oem-osp1Upgrade linux-image-4.15.0-237-lowlatencyUpgrade linux-image-virtual-lts-xenialUpgrade linux-image-oracle-lts-18.04Upgrade linux-image-4.4.0-1113-fipsUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-aws-hweUpgrade linux-image-aws-lts-20.04Upgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-4.15.0-1142-oracleUpgrade linux-image-5.4.0-1092-ibmUpgrade linux-image-azureUpgrade linux-image-4.4.0-1144-kvmUpgrade linux-image-4.15.0-1135-fipsUpgrade linux-image-gcp-fipsUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-4.15.0-1163-kvmUpgrade linux-image-5.4.0-1146-aws-fipsUpgrade linux-image-5.4.0-216-generic-lpaeUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-azure-lts-20.04Upgrade linux-image-5.4.0-1133-kvmUpgrade linux-image-5.4.0-1064-xilinx-zynqmpUpgrade linux-image-fipsUpgrade linux-image-5.4.0-1120-fipsUpgrade linux-image-lowlatency-lts-xenialUpgrade linux-image-oemUpgrade linux-image-bluefieldUpgrade linux-image-aws-fipsUpgrade linux-image-5.4.0-216-genericUpgrade linux-image-5.4.0-216-lowlatencyUpgrade linux-image-4.4.0-268-lowlatencyUpgrade linux-image-4.15.0-1180-awsUpgrade linux-image-aws-lts-18.04Upgrade linux-image-5.4.0-1149-gcp-fipsUpgrade linux-image-lowlatency-hwe-16.04Upgrade linux-image-generic-lpaeUpgrade linux-image-5.4.0-1051-iotUpgrade linux-image-lowlatencyUpgrade linux-image-4.4.0-1143-awsUpgrade linux-image-5.4.0-1144-oracleUpgrade linux-image-azure-fipsUpgrade linux-image-ibm-lts-20.04Upgrade linux-image-oracleUpgrade linux-image-generic-lts-xenialUpgrade linux-image-4.15.0-237-genericUpgrade linux-image-generic-hwe-16.04Upgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-raspiUpgrade linux-image-5.4.0-1149-gcpUpgrade linux-image-aws | Nov 19, 2024 | May 21, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | May 21, 2024 |
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