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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2024-43098— i3c: Use i3cdev->desc->info instead of calling i3c_device_get_info() to avoid deadlock

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于I3C驱动在调用i3c_device_get_info时,可能导致死锁。

AI Predicted 5.3 Difficulty: Trivial EPSS 0.17% · P7

Possible ATT&CK Techniques 1 AI

T1190 · Exploit Public-Facing Application

Affected Version Matrix 16

VendorProduct Version RangeStatus
Linux Linux 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 9a2173660ee53d5699744f02e6ab7bf89fcd0b1a affected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 5ac1dd51aaa0ce8b5421d1137e857955a4b6f55e affected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 2d98fa2a50b8058de52ada168fa5dbabb574711b affected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 816187b1833908941286e71b0041059a4acd52ed affected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< ffe19e363c6f8b992ba835a361542568dea17409 affected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 1f51ae217d09c361ede900b94735a6d2df6c0344 affected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 6cf7b65f7029914dc0cd7db86fac9ee5159008c6 affected
5.0 affected
… +8 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2024-43098

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
i3c: Use i3cdev->desc->info instead of calling i3c_device_get_info() to avoid deadlock
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: i3c: Use i3cdev->desc->info instead of calling i3c_device_get_info() to avoid deadlock A deadlock may happen since the i3c_master_register() acquires &i3cbus->lock twice. See the log below. Use i3cdev->desc->info instead of calling i3c_device_info() to avoid acquiring the lock twice. v2: - Modified the title and commit message ============================================ WARNING: possible recursive locking detected 6.11.0-mainline -------------------------------------------- init/1 is trying to acquire lock: f1ffff80a6a40dc0 (&i3cbus->lock){++++}-{3:3}, at: i3c_bus_normaluse_lock but task is already holding lock: f1ffff80a6a40dc0 (&i3cbus->lock){++++}-{3:3}, at: i3c_master_register other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&i3cbus->lock); lock(&i3cbus->lock); *** DEADLOCK *** May be due to missing lock nesting notation 2 locks held by init/1: #0: fcffff809b6798f8 (&dev->mutex){....}-{3:3}, at: __driver_attach #1: f1ffff80a6a40dc0 (&i3cbus->lock){++++}-{3:3}, at: i3c_master_register stack backtrace: CPU: 6 UID: 0 PID: 1 Comm: init Call trace: dump_backtrace+0xfc/0x17c show_stack+0x18/0x28 dump_stack_lvl+0x40/0xc0 dump_stack+0x18/0x24 print_deadlock_bug+0x388/0x390 __lock_acquire+0x18bc/0x32ec lock_acquire+0x134/0x2b0 down_read+0x50/0x19c i3c_bus_normaluse_lock+0x14/0x24 i3c_device_get_info+0x24/0x58 i3c_device_uevent+0x34/0xa4 dev_uevent+0x310/0x384 kobject_uevent_env+0x244/0x414 kobject_uevent+0x14/0x20 device_add+0x278/0x460 device_register+0x20/0x34 i3c_master_register_new_i3c_devs+0x78/0x154 i3c_master_register+0x6a0/0x6d4 mtk_i3c_master_probe+0x3b8/0x4d8 platform_probe+0xa0/0xe0 really_probe+0x114/0x454 __driver_probe_device+0xa0/0x15c driver_probe_device+0x3c/0x1ac __driver_attach+0xc4/0x1f0 bus_for_each_dev+0x104/0x160 driver_attach+0x24/0x34 bus_add_driver+0x14c/0x294 driver_register+0x68/0x104 __platform_driver_register+0x20/0x30 init_module+0x20/0xfe4 do_one_initcall+0x184/0x464 do_init_module+0x58/0x1ec load_module+0xefc/0x10c8 __arm64_sys_finit_module+0x238/0x33c invoke_syscall+0x58/0x10c el0_svc_common+0xa8/0xdc do_el0_svc+0x1c/0x28 el0_svc+0x50/0xac el0t_64_sync_handler+0x70/0xbc el0t_64_sync+0x1a8/0x1ac
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存在安全漏洞,该漏洞源于I3C驱动在调用i3c_device_get_info时,可能导致死锁。
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

Vendor Product Affected Versions CPE Subscribe
Linux Linux 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 ~ 9a2173660ee53d5699744f02e6ab7bf89fcd0b1a -
Linux Linux 5.0 -

II. Public POCs for CVE-2024-43098

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-43098

请登录查看更多情报信息。

Patches & Fixes for CVE-2024-43098 (7)

Same Patch Batch · Linux · 2025-01-11 · 67 CVEs total

CVE-2024-47408 9.8 CRITICAL net/smc: check smcd_v2_ext_offset when receiving proposal msg
CVE-2024-49568 9.8 CRITICAL net/smc: check v2_ext_offset/eid_cnt/ism_gid_cnt when receiving proposal msg
CVE-2024-57843 9.8 CRITICAL virtio-net: fix overflow inside virtnet_rq_alloc
CVE-2024-57793 9.3 CRITICAL virt: tdx-guest: Just leak decrypted memory on unrecoverable errors
CVE-2024-49571 9.1 CRITICAL net/smc: check iparea_offset and ipv6_prefixes_cnt when receiving proposal msg
CVE-2024-55639 8.4 HIGH net: renesas: rswitch: avoid use-after-put for a device tree node
CVE-2024-41149 7.8 HIGH block: avoid to reuse `hctx` not removed from cpuhp callback list
CVE-2024-57875 7.8 HIGH block: RCU protect disk->conv_zones_bitmap
CVE-2024-47794 7.8 HIGH bpf: Prevent tailcall infinite loop caused by freplace
CVE-2024-57849 7.8 HIGH s390/cpum_sf: Handle CPU hotplug remove during sampling
CVE-2024-52319 7.8 HIGH mm: use aligned address in clear_gigantic_page()
CVE-2024-51729 7.8 HIGH mm: use aligned address in copy_user_gigantic_page()
CVE-2024-57850 7.8 HIGH jffs2: Prevent rtime decompress memory corruption
CVE-2024-49569 7.5 HIGH nvme-rdma: unquiesce admin_q before destroy it
CVE-2024-56788 7.5 HIGH net: ethernet: oa_tc6: fix tx skb race condition between reference pointers
CVE-2024-57791 7.5 HIGH net/smc: check return value of sock_recvmsg when draining clc data
CVE-2024-57792 7.3 HIGH power: supply: gpio-charger: Fix set charge current limits
CVE-2024-57804 7.3 HIGH scsi: mpi3mr: Fix corrupt config pages PHY state is switched in sysfs
CVE-2024-56368 7.1 HIGH ring-buffer: Fix overflow in __rb_map_vma
CVE-2024-49573 7.0 HIGH sched/fair: Fix NEXT_BUDDY

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

IV. Related Vulnerabilities

V. Comments for CVE-2024-43098

No comments yet


Leave a comment