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 kernel-tools-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-develUpgrade kernelUpgrade kernel-debuginfoUpgrade kernel-headersUpgrade perf-debuginfoUpgrade kernel-tools-develUpgrade kernel-livepatch-5.10.173-154.642Upgrade python-perf-debuginfoUpgrade perfUpgrade kernel-debuginfo-common-aarch64Upgrade python-perfUpgrade kernel-livepatch-5.15.102-61.139Upgrade bpftool-debuginfoUpgrade bpftoolUpgrade kernel-tools | Nov 12, 2024 | May 21, 2024 |
| Amazon_linux_2023 | — | Upgrade bpftoolUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-livepatch-6.1.12-17.42Upgrade bpftool-debuginfoUpgrade kernel-headersUpgrade kernel-libbpfUpgrade kernel-debuginfoUpgrade kernel-develUpgrade python3-perf-debuginfoUpgrade kernel-libbpf-develUpgrade kernel-libbpf-staticUpgrade kernel-tools-develUpgrade perfUpgrade kernelUpgrade kernel-toolsUpgrade perf-debuginfoUpgrade python3-perf | Feb 17, 2025 | May 21, 2024 |
| Debian | — | Upgrade linux | Jul 30, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-tools-libsUpgrade kernelUpgrade kernel-abi-stablelistsUpgrade python3-perfUpgrade kernel-tools | Oct 8, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-tools-libsUpgrade python3-perfUpgrade bpftoolUpgrade kernelUpgrade kernel-toolsUpgrade kernel-abi-stablelists | Oct 9, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernelUpgrade kernel-tools-libsUpgrade python3-perfUpgrade kernel-tools | Oct 8, 2024 | May 21, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | May 21, 2024 |
| Suse | — | Upgrade kernel-rt-vdsoUpgrade kernel-azure-develUpgrade kernel-develUpgrade kernel-azureUpgrade kernel-rt-extraUpgrade kernel-default-livepatch-develUpgrade kernel-source-vanillaUpgrade dlm-kmp-defaultUpgrade dtb-sprdUpgrade kernel-64kb-extraUpgrade dtb-xilinxUpgrade kernel-syms-rtUpgrade cluster-md-kmp-rtUpgrade reiserfs-kmp-rtUpgrade dtb-allwinnerUpgrade dtb-rockchipUpgrade kernel-default-optionalUpgrade kselftests-kmp-defaultUpgrade kernel-debug-livepatch-develUpgrade kernel-default-baseUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-obs-buildUpgrade kernel-defaultUpgrade cluster-md-kmp-64kbUpgrade dtb-mediatekUpgrade reiserfs-kmp-azureUpgrade kernel-default-base-rebuildUpgrade dtb-qcomUpgrade dlm-kmp-azureUpgrade kernel-rt-develUpgrade dlm-kmp-rtUpgrade kernel-devel-rtUpgrade gfs2-kmp-defaultUpgrade dtb-armUpgrade kernel-rt-livepatchUpgrade kernel-debug-vdsoUpgrade kselftests-kmp-rtUpgrade cluster-md-kmp-defaultUpgrade dtb-nvidiaUpgrade kernel-docsUpgrade kernel-rtUpgrade kernel-rt_debug-vdsoUpgrade kernel-default-extraUpgrade kernel-azure-livepatch-develUpgrade dtb-broadcomUpgrade gfs2-kmp-azureUpgrade kernel-sourceUpgrade kernel-azure-extraUpgrade gfs2-kmp-rtUpgrade kernel-default-manUpgrade dtb-amdUpgrade kselftests-kmp-64kbUpgrade kernel-azure-vdsoUpgrade dtb-lgUpgrade kernel-debug-develUpgrade kernel-source-azureUpgrade reiserfs-kmp-defaultUpgrade kernel-rt-livepatch-develUpgrade kernel-kvmsmallUpgrade kernel-azure-baseUpgrade dtb-apmUpgrade dtb-exynosUpgrade dtb-amazonUpgrade kernel-devel-azureUpgrade kernel-kvmsmall-vdsoUpgrade kernel-default-livepatchUpgrade reiserfs-kmp-64kbUpgrade dtb-socionextUpgrade kernel-64kbUpgrade dtb-appleUpgrade dtb-freescaleUpgrade cluster-md-kmp-azureUpgrade kernel-64kb-develUpgrade kernel-64kb-optionalUpgrade kernel-rt_debugUpgrade kernel-obs-qaUpgrade dlm-kmp-64kbUpgrade ocfs2-kmp-64kbUpgrade ocfs2-kmp-azureUpgrade kernel-syms-azureUpgrade kselftests-kmp-azureUpgrade dtb-caviumUpgrade kernel-default-vdsoUpgrade kernel-source-rtUpgrade ocfs2-kmp-rtUpgrade dtb-alteraUpgrade kernel-rt-optionalUpgrade dtb-marvellUpgrade kernel-kvmsmall-develUpgrade kernel-azure-optionalUpgrade gfs2-kmp-64kbUpgrade dtb-amlogicUpgrade kernel-symsUpgrade kernel-debugUpgrade kernel-64kb-livepatch-develUpgrade dtb-renesasUpgrade dtb-hisiliconUpgrade kernel-zfcpdumpUpgrade kernel-docs-htmlUpgrade ocfs2-kmp-defaultUpgrade kernel-rt_debug-develUpgrade kernel-macrosUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-default-devel | Jun 12, 2024 | May 21, 2024 |
| Ubuntu | — | Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-aws-hweUpgrade linux-image-5.4.0-1133-kvmUpgrade linux-image-aws-fipsUpgrade linux-image-oracleUpgrade linux-image-fipsUpgrade linux-image-oemUpgrade linux-image-4.15.0-1135-fipsUpgrade linux-image-aws-lts-20.04Upgrade linux-image-5.4.0-1149-gcp-fipsUpgrade linux-image-4.15.0-1163-kvmUpgrade linux-image-5.4.0-1064-xilinx-zynqmpUpgrade linux-image-4.15.0-237-genericUpgrade linux-image-generic-lts-xenialUpgrade linux-image-4.4.0-1144-kvmUpgrade linux-image-azure-lts-20.04Upgrade linux-image-azureUpgrade linux-image-generic-lpaeUpgrade linux-image-4.4.0-1143-awsUpgrade linux-image-gcp-fipsUpgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-5.4.0-216-lowlatencyUpgrade linux-image-4.15.0-1142-oracleUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-awsUpgrade linux-image-lowlatency-hwe-16.04Upgrade linux-image-lowlatencyUpgrade linux-image-5.4.0-216-genericUpgrade linux-image-raspiUpgrade linux-image-4.4.0-268-lowlatencyUpgrade linux-image-5.4.0-216-generic-lpaeUpgrade linux-image-4.15.0-1180-awsUpgrade linux-image-5.4.0-1092-ibmUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-5.4.0-1144-oracleUpgrade linux-image-5.4.0-1146-aws-fipsUpgrade linux-image-5.4.0-1149-gcpUpgrade linux-image-lowlatency-lts-xenialUpgrade linux-image-azure-fipsUpgrade linux-image-5.4.0-1051-iotUpgrade linux-image-5.4.0-1120-fipsUpgrade linux-image-bluefieldUpgrade linux-image-aws-lts-18.04Upgrade linux-image-generic-hwe-16.04Upgrade linux-image-4.15.0-237-lowlatencyUpgrade linux-image-virtual-hwe-16.04Upgrade linux-image-gcpUpgrade linux-image-gkeUpgrade linux-image-4.15.0-2118-aws-fipsUpgrade linux-image-5.4.0-1151-azureUpgrade linux-image-virtualUpgrade linux-image-4.4.0-1181-awsUpgrade linux-image-kvmUpgrade linux-image-5.4.0-1151-azure-fipsUpgrade linux-image-oem-osp1Upgrade linux-image-azure-lts-18.04Upgrade linux-image-gcp-lts-18.04Upgrade linux-image-4.4.0-268-genericUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-4.15.0-1188-azureUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-raspi-hwe-18.04Upgrade linux-image-4.15.0-2097-azure-fipsUpgrade linux-image-ibmUpgrade linux-image-4.15.0-2081-gcp-fipsUpgrade linux-image-4.15.0-1173-gcpUpgrade linux-image-5.4.0-1105-bluefieldUpgrade linux-image-5.4.0-1146-awsUpgrade linux-image-4.4.0-1113-fipsUpgrade linux-image-virtual-lts-xenialUpgrade linux-image-oracle-lts-18.04Upgrade linux-image-raspi2Upgrade linux-image-genericUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-generic-hwe-18.04 | 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