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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2024-35809— PCI/PM: Drain runtime-idle callbacks before driver removal

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存在安全漏洞。攻击者利用该漏洞导致内核崩溃。

AI Predicted 5.5 Difficulty: Moderate EPSS 0.19% · P9

Possible ATT&CK Techniques 1 AI

T1499 · Endpoint Denial of Service

Affected Version Matrix 20

VendorProduct Version RangeStatus
Linux Linux f3ec4f87d607f40497afdb5ac03f11e2ea253d52< 9a87375bb586515c0af63d5dcdcd58ec4acf20a6 affected
f3ec4f87d607f40497afdb5ac03f11e2ea253d52< 47d8aafcfe313511a98f165a54d0adceb34e54b1 affected
f3ec4f87d607f40497afdb5ac03f11e2ea253d52< bbe068b24409ef740657215605284fc7cdddd491 affected
f3ec4f87d607f40497afdb5ac03f11e2ea253d52< 7cc94dd36e48879e76ae7a8daea4ff322b7d9674 affected
f3ec4f87d607f40497afdb5ac03f11e2ea253d52< 900b81caf00c89417172afe0e7e49ac4eb110f4b affected
f3ec4f87d607f40497afdb5ac03f11e2ea253d52< d86ad8c3e152349454b82f37007ff6ba45f26989 affected
f3ec4f87d607f40497afdb5ac03f11e2ea253d52< d534198311c345e4b062c4b88bb609efb8bd91d5 affected
f3ec4f87d607f40497afdb5ac03f11e2ea253d52< 6347348c6aba52dda0b33296684cbb627bdc6970 affected
… +12 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2024-35809

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
PCI/PM: Drain runtime-idle callbacks before driver removal
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: PCI/PM: Drain runtime-idle callbacks before driver removal A race condition between the .runtime_idle() callback and the .remove() callback in the rtsx_pcr PCI driver leads to a kernel crash due to an unhandled page fault [1]. The problem is that rtsx_pci_runtime_idle() is not expected to be running after pm_runtime_get_sync() has been called, but the latter doesn't really guarantee that. It only guarantees that the suspend and resume callbacks will not be running when it returns. However, if a .runtime_idle() callback is already running when pm_runtime_get_sync() is called, the latter will notice that the runtime PM status of the device is RPM_ACTIVE and it will return right away without waiting for the former to complete. In fact, it cannot wait for .runtime_idle() to complete because it may be called from that callback (it arguably does not make much sense to do that, but it is not strictly prohibited). Thus in general, whoever is providing a .runtime_idle() callback needs to protect it from running in parallel with whatever code runs after pm_runtime_get_sync(). [Note that .runtime_idle() will not start after pm_runtime_get_sync() has returned, but it may continue running then if it has started earlier.] One way to address that race condition is to call pm_runtime_barrier() after pm_runtime_get_sync() (not before it, because a nonzero value of the runtime PM usage counter is necessary to prevent runtime PM callbacks from being invoked) to wait for the .runtime_idle() callback to complete should it be running at that point. A suitable place for doing that is in pci_device_remove() which calls pm_runtime_get_sync() before removing the driver, so it may as well call pm_runtime_barrier() subsequently, which will prevent the race in question from occurring, not just in the rtsx_pcr driver, but in any PCI drivers providing .runtime_idle() callbacks.
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

Vendor Product Affected Versions CPE Subscribe
Linux Linux f3ec4f87d607f40497afdb5ac03f11e2ea253d52 ~ 9a87375bb586515c0af63d5dcdcd58ec4acf20a6 -
Linux Linux 2.6.36 -

II. Public POCs for CVE-2024-35809

# 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-35809

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

Mailing List Discussions for CVE-2024-35809 (2)

Other References for CVE-2024-35809 (9)

Same Patch Batch · Linux · 2024-05-17 · 135 CVEs total

CVE-2023-52687 9.8 CRITICAL crypto: safexcel - Add error handling for dma_map_sg() calls
CVE-2024-35856 8.8 HIGH Bluetooth: btusb: mediatek: Fix double free of skb in coredump
CVE-2024-35804 8.8 HIGH KVM: x86: Mark target gfn of emulated atomic instruction as dirty
CVE-2024-35843 8.8 HIGH iommu/vt-d: Use device rbtree in iopf reporting path
CVE-2024-35811 8.8 HIGH wifi: brcmfmac: Fix use-after-free bug in brcmf_cfg80211_detach
CVE-2024-27415 8.8 HIGH netfilter: bridge: confirm multicast packets before passing them up the stack
CVE-2024-27416 8.8 HIGH Bluetooth: hci_event: Fix handling of HCI_EV_IO_CAPA_REQUEST
CVE-2024-27404 8.2 HIGH mptcp: fix data races on remote_id
CVE-2023-52669 8.2 HIGH crypto: s390/aes - Fix buffer overread in CTR mode
CVE-2024-35834 8.2 HIGH xsk: recycle buffer in case Rx queue was full
CVE-2024-35789 8.0 HIGH wifi: mac80211: check/clear fast rx for non-4addr sta VLAN changes
CVE-2024-35830 7.8 HIGH media: tc358743: register v4l2 async device only after successful setup
CVE-2024-35835 7.8 HIGH net/mlx5e: fix a double-free in arfs_create_groups
CVE-2024-35827 7.8 HIGH io_uring/net: fix overflow check in io_recvmsg_mshot_prep()
CVE-2023-52662 7.8 HIGH drm/vmwgfx: fix a memleak in vmw_gmrid_man_get_node
CVE-2024-35817 7.8 HIGH drm/amdgpu: amdgpu_ttm_gart_bind set gtt bound flag
CVE-2024-35808 7.8 HIGH md/dm-raid: don't call md_reap_sync_thread() directly
CVE-2024-35793 7.8 HIGH debugfs: fix wait/cancellation handling during remove
CVE-2024-35798 7.8 HIGH btrfs: fix race in read_extent_buffer_pages()
CVE-2024-35814 7.8 HIGH swiotlb: Fix double-allocation of slots due to broken alignment handling

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

IV. Related Vulnerabilities

V. Comments for CVE-2024-35809

No comments yet


Leave a comment