Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2023-52803— SUNRPC: Fix RPC client cleaned up the freed pipefs dentries

AI Predicted 6.5 Difficulty: Moderate EPSS 0.24% · P15

Possible ATT&CK Techniques 1AI

T1499 · Endpoint Denial of Service

Affected Version Matrix 18

VendorProductVersion RangeStatus
LinuxLinux0157d021d23a087eecfa830502f81cfe843f0d16< 17866066b8ac1cc38fb449670bc15dc9fee4b40aaffected
0157d021d23a087eecfa830502f81cfe843f0d16< 7d61d1da2ed1f682c41cae0c8d4719cdaccee5c5affected
0157d021d23a087eecfa830502f81cfe843f0d16< dedf2a0eb9448ae73b270743e6ea9b108189df46affected
0157d021d23a087eecfa830502f81cfe843f0d16< 194454afa6aa9d6ed74f0c57127bc8beb27c20dfaffected
0157d021d23a087eecfa830502f81cfe843f0d16< 7749fd2dbef72a52b5c9ffdbf877691950ed4680affected
0157d021d23a087eecfa830502f81cfe843f0d16< 1cdb52ffd6600a37bd355d8dce58ecd03e55e618affected
0157d021d23a087eecfa830502f81cfe843f0d16< cc2e7ebbeb1d0601f7f3c8d93b78fcc03a95e44aaffected
0157d021d23a087eecfa830502f81cfe843f0d16< bfca5fb4e97c46503ddfc582335917b0cc228264affected
… +10 more rows
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2023-52803

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
SUNRPC: Fix RPC client cleaned up the freed pipefs dentries
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: SUNRPC: Fix RPC client cleaned up the freed pipefs dentries RPC client pipefs dentries cleanup is in separated rpc_remove_pipedir() workqueue,which takes care about pipefs superblock locking. In some special scenarios, when kernel frees the pipefs sb of the current client and immediately alloctes a new pipefs sb, rpc_remove_pipedir function would misjudge the existence of pipefs sb which is not the one it used to hold. As a result, the rpc_remove_pipedir would clean the released freed pipefs dentries. To fix this issue, rpc_remove_pipedir should check whether the current pipefs sb is consistent with the original pipefs sb. This error can be catched by KASAN: ========================================================= [ 250.497700] BUG: KASAN: slab-use-after-free in dget_parent+0x195/0x200 [ 250.498315] Read of size 4 at addr ffff88800a2ab804 by task kworker/0:18/106503 [ 250.500549] Workqueue: events rpc_free_client_work [ 250.501001] Call Trace: [ 250.502880] kasan_report+0xb6/0xf0 [ 250.503209] ? dget_parent+0x195/0x200 [ 250.503561] dget_parent+0x195/0x200 [ 250.503897] ? __pfx_rpc_clntdir_depopulate+0x10/0x10 [ 250.504384] rpc_rmdir_depopulate+0x1b/0x90 [ 250.504781] rpc_remove_client_dir+0xf5/0x150 [ 250.505195] rpc_free_client_work+0xe4/0x230 [ 250.505598] process_one_work+0x8ee/0x13b0 ... [ 22.039056] Allocated by task 244: [ 22.039390] kasan_save_stack+0x22/0x50 [ 22.039758] kasan_set_track+0x25/0x30 [ 22.040109] __kasan_slab_alloc+0x59/0x70 [ 22.040487] kmem_cache_alloc_lru+0xf0/0x240 [ 22.040889] __d_alloc+0x31/0x8e0 [ 22.041207] d_alloc+0x44/0x1f0 [ 22.041514] __rpc_lookup_create_exclusive+0x11c/0x140 [ 22.041987] rpc_mkdir_populate.constprop.0+0x5f/0x110 [ 22.042459] rpc_create_client_dir+0x34/0x150 [ 22.042874] rpc_setup_pipedir_sb+0x102/0x1c0 [ 22.043284] rpc_client_register+0x136/0x4e0 [ 22.043689] rpc_new_client+0x911/0x1020 [ 22.044057] rpc_create_xprt+0xcb/0x370 [ 22.044417] rpc_create+0x36b/0x6c0 ... [ 22.049524] Freed by task 0: [ 22.049803] kasan_save_stack+0x22/0x50 [ 22.050165] kasan_set_track+0x25/0x30 [ 22.050520] kasan_save_free_info+0x2b/0x50 [ 22.050921] __kasan_slab_free+0x10e/0x1a0 [ 22.051306] kmem_cache_free+0xa5/0x390 [ 22.051667] rcu_core+0x62c/0x1930 [ 22.051995] __do_softirq+0x165/0x52a [ 22.052347] [ 22.052503] Last potentially related work creation: [ 22.052952] kasan_save_stack+0x22/0x50 [ 22.053313] __kasan_record_aux_stack+0x8e/0xa0 [ 22.053739] __call_rcu_common.constprop.0+0x6b/0x8b0 [ 22.054209] dentry_free+0xb2/0x140 [ 22.054540] __dentry_kill+0x3be/0x540 [ 22.054900] shrink_dentry_list+0x199/0x510 [ 22.055293] shrink_dcache_parent+0x190/0x240 [ 22.055703] do_one_tree+0x11/0x40 [ 22.056028] shrink_dcache_for_umount+0x61/0x140 [ 22.056461] generic_shutdown_super+0x70/0x590 [ 22.056879] kill_anon_super+0x3a/0x60 [ 22.057234] rpc_kill_sb+0x121/0x200
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于SUNRPC模块存在漏洞。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux 0157d021d23a087eecfa830502f81cfe843f0d16 ~ 17866066b8ac1cc38fb449670bc15dc9fee4b40a -
LinuxLinux 3.4 -

II. Public POCs for CVE-2023-52803

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2023-52803

登录查看更多情报信息。

Other References for CVE-2023-52803 (7)

Same Patch Batch · Linux · 2024-05-21 · 361 CVEs total

CVE-2021-474279.8 CRITICALscsi: iscsi: Fix iscsi_task use after free
CVE-2021-473289.8 CRITICALscsi: iscsi: Fix conn use after free during resets
CVE-2023-527329.8 CRITICALceph: blocklist the kclient when receiving corrupted snap trace
CVE-2023-527419.8 CRITICALcifs: Fix use-after-free in rdata->read_into_pages()
CVE-2021-472329.8 CRITICALcan: j1939: fix Use-after-Free, hold skb ref while in use
CVE-2023-527559.8 CRITICALksmbd: fix slab out of bounds write in smb_inherit_dacl()
CVE-2021-473789.8 CRITICALnvme-rdma: destroy cm id before destroy qp to avoid use after free
CVE-2023-527698.8 HIGHwifi: ath12k: fix htt mlo-offset event locking
CVE-2021-473088.8 HIGHscsi: libfc: Fix array index out of bound exception
CVE-2023-528018.8 HIGHiommufd: Fix missing update of domains_itree after splitting iopt_area
CVE-2023-527988.8 HIGHwifi: ath11k: fix dfs radar event locking
CVE-2023-528468.8 HIGHhsr: Prevent use after free in prp_create_tagged_frame()
CVE-2023-527908.8 HIGHswiotlb: fix out-of-bounds TLB allocations with CONFIG_SWIOTLB_DYNAMIC
CVE-2023-527768.8 HIGHwifi: ath12k: fix dfs-radar and temperature event locking
CVE-2021-473888.8 HIGHmac80211: fix use-after-free in CCMP/GCMP RX
CVE-2021-473908.8 HIGHKVM: x86: Fix stack-out-of-bounds memory access from ioapic_write_indirect()
CVE-2021-473528.4 HIGHvirtio-net: Add validation for used length
CVE-2023-528298.4 HIGHwifi: ath12k: fix possible out-of-bound write in ath12k_wmi_ext_hal_reg_caps()
CVE-2021-472408.4 HIGHnet: qrtr: fix OOB Read in qrtr_endpoint_post
CVE-2021-472448.2 HIGHmptcp: Fix out of bounds when parsing TCP options

Showing top 20 of 361 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2023-52803

No comments yet


Leave a comment