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

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2023-53235— drm/tests: helpers: Avoid a driver uaf

AI Predicted 5.5 Difficulty: Theoretical EPSS 0.16% · P6

Affected Version Matrix 6

VendorProductVersion RangeStatus
LinuxLinuxd98780310719bf4076d975c2ff65c44c7c0d929e< c9d8be0e533738b744abb669263c4750d4830009affected
d98780310719bf4076d975c2ff65c44c7c0d929e< 139a27854bf5ce93ff9805f9f7683b88c13074dcaffected
6.3affected
< 6.3unaffected
6.5.5≤ 6.5.*unaffected
6.6≤ *unaffected
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2023-53235

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
drm/tests: helpers: Avoid a driver uaf
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: drm/tests: helpers: Avoid a driver uaf when using __drm_kunit_helper_alloc_drm_device() the driver may be dereferenced by device-managed resources up until the device is freed, which is typically later than the kunit-managed resource code frees it. Fix this by simply make the driver device-managed as well. In short, the sequence leading to the UAF is as follows: INIT: Code allocates a struct device as a kunit-managed resource. Code allocates a drm driver as a kunit-managed resource. Code allocates a drm device as a device-managed resource. EXIT: Kunit resource cleanup frees the drm driver Kunit resource cleanup puts the struct device, which starts a device-managed resource cleanup device-managed cleanup calls drm_dev_put() drm_dev_put() dereferences the (now freed) drm driver -> Boom. Related KASAN message: [55272.551542] ================================================================== [55272.551551] BUG: KASAN: slab-use-after-free in drm_dev_put.part.0+0xd4/0xe0 [drm] [55272.551603] Read of size 8 at addr ffff888127502828 by task kunit_try_catch/10353 [55272.551612] CPU: 4 PID: 10353 Comm: kunit_try_catch Tainted: G U N 6.5.0-rc7+ #155 [55272.551620] Hardware name: ASUS System Product Name/PRIME B560M-A AC, BIOS 0403 01/26/2021 [55272.551626] Call Trace: [55272.551629] <TASK> [55272.551633] dump_stack_lvl+0x57/0x90 [55272.551639] print_report+0xcf/0x630 [55272.551645] ? _raw_spin_lock_irqsave+0x5f/0x70 [55272.551652] ? drm_dev_put.part.0+0xd4/0xe0 [drm] [55272.551694] kasan_report+0xd7/0x110 [55272.551699] ? drm_dev_put.part.0+0xd4/0xe0 [drm] [55272.551742] drm_dev_put.part.0+0xd4/0xe0 [drm] [55272.551783] devres_release_all+0x15d/0x1f0 [55272.551790] ? __pfx_devres_release_all+0x10/0x10 [55272.551797] device_unbind_cleanup+0x16/0x1a0 [55272.551802] device_release_driver_internal+0x3e5/0x540 [55272.551808] ? kobject_put+0x5d/0x4b0 [55272.551814] bus_remove_device+0x1f1/0x3f0 [55272.551819] device_del+0x342/0x910 [55272.551826] ? __pfx_device_del+0x10/0x10 [55272.551830] ? lock_release+0x339/0x5e0 [55272.551836] ? kunit_remove_resource+0x128/0x290 [kunit] [55272.551845] ? __pfx_lock_release+0x10/0x10 [55272.551851] platform_device_del.part.0+0x1f/0x1e0 [55272.551856] ? _raw_spin_unlock_irqrestore+0x30/0x60 [55272.551863] kunit_remove_resource+0x195/0x290 [kunit] [55272.551871] ? _raw_spin_unlock_irqrestore+0x30/0x60 [55272.551877] kunit_cleanup+0x78/0x120 [kunit] [55272.551885] ? __kthread_parkme+0xc1/0x1f0 [55272.551891] ? __pfx_kunit_try_run_case_cleanup+0x10/0x10 [kunit] [55272.551900] ? __pfx_kunit_generic_run_threadfn_adapter+0x10/0x10 [kunit] [55272.551909] kunit_generic_run_threadfn_adapter+0x4a/0x90 [kunit] [55272.551919] kthread+0x2e7/0x3c0 [55272.551924] ? __pfx_kthread+0x10/0x10 [55272.551929] ret_from_fork+0x2d/0x70 [55272.551935] ? __pfx_kthread+0x10/0x10 [55272.551940] ret_from_fork_asm+0x1b/0x30 [55272.551948] </TASK> [55272.551953] Allocated by task 10351: [55272.551956] kasan_save_stack+0x1c/0x40 [55272.551962] kasan_set_track+0x21/0x30 [55272.551966] __kasan_kmalloc+0x8b/0x90 [55272.551970] __kmalloc+0x5e/0x160 [55272.551976] kunit_kmalloc_array+0x1c/0x50 [kunit] [55272.551984] drm_exec_test_init+0xfa/0x2c0 [drm_exec_test] [55272.551991] kunit_try_run_case+0xdd/0x250 [kunit] [55272.551999] kunit_generic_run_threadfn_adapter+0x4a/0x90 [kunit] [55272.552008] kthread+0x2e7/0x3c0 [55272.552012] ret_from_fork+0x2d/0x70 [55272.552017] ret_from_fork_asm+0x1b/0x30 [55272.552024] Freed by task 10353: [55272.552027] kasan_save_stack+0x1c/0x40 [55272.552032] kasan_set_track+0x21/0x30 [55272.552036] kasan_save_free_info+0x27/0x40 [55272.552041] __kasan_slab_free+0x106/0x180 [55272.552046] slab_free_freelist_hook+0xb3/0x160 [55272.552051] __kmem_cache_free+0xb2/0x290 [55272.552056] kunit_remove_resource+0x195/0x290 [kunit] [55272.552064] kunit_cleanup+0x7 ---truncated---
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存在安全漏洞,该漏洞源于设备管理资源在释放后仍可能引用驱动程序,可能导致释放后重用。
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 d98780310719bf4076d975c2ff65c44c7c0d929e ~ c9d8be0e533738b744abb669263c4750d4830009 -
LinuxLinux 6.3 -

II. Public POCs for CVE-2023-53235

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2023-53235

登录查看更多情报信息。

Same Patch Batch · Linux · 2025-09-15 · 210 CVEs total

CVE-2022-502359.8 CRITICALNFSD: Protect against send buffer overflow in NFSv2 READDIR
CVE-2022-503359.8 CRITICAL9p: set req refcount to zero to avoid uninitialized usage
CVE-2023-531929.8 CRITICALvxlan: Fix nexthop hash size
CVE-2023-532538.8 HIGHHID: nvidia-shield: Reference hid_device devm allocation of input_dev name
CVE-2023-532268.8 HIGHwifi: mwifiex: Fix OOB and integer underflow when rx packets
CVE-2022-502418.8 HIGHNFSD: fix use-after-free on source server when doing inter-server copy
CVE-2023-531948.4 HIGHfs/ntfs3: Add length check in indx_get_root
CVE-2023-532138.1 HIGHwifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies()
CVE-2023-531868.1 HIGHskbuff: Fix a race between coalescing and releasing SKBs
CVE-2022-503107.8 HIGHip6mr: fix UAF issue in ip6mr_sk_done() when addrconf_init_net() failed
CVE-2023-532547.8 HIGHcacheinfo: Fix shared_cpu_map to handle shared caches at different levels
CVE-2023-532527.8 HIGHBluetooth: use RCU for hci_conn_params and iterate safely in hci_sync
CVE-2023-531707.8 HIGHnet: dsa: Removed unneeded of_node_put in felix_parse_ports_node
CVE-2023-531767.8 HIGHserial: 8250: Reinit port->pm on port specific driver unbind
CVE-2023-531787.8 HIGHmm: fix zswap writeback race condition
CVE-2023-531797.8 HIGHnetfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c
CVE-2023-531847.8 HIGHarm64/sme: Set new vector length before reallocating
CVE-2022-503157.8 HIGHata: ahci: Match EM_MAX_SLOTS with SATA_PMP_MAX_PORTS
CVE-2023-531877.8 HIGHbtrfs: fix use-after-free of new block group that became unused
CVE-2025-398007.8 HIGHbtrfs: abort transaction on unexpected eb generation at btrfs_copy_root()

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

IV. Related Vulnerabilities

V. Comments for CVE-2023-53235

No comments yet


Leave a comment