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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2024-26750— af_unix: Drop oob_skb ref before purging queue in GC.

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.22% · P12

Possible ATT&CK Techniques 1 AI

T1211 · Exploitation for Stealth

Affected Version Matrix 6

VendorProduct Version RangeStatus
Linux Linux 36f7371de977f805750748e80279be7e370df85c< 6c480d0f131862645d172ca9e25dc152b1a5c3a6 affected
2a3d40b4025fcfe51b04924979f1653993b17669< c4c795b21dd23d9514ae1c6646c3fb2c78b5be60 affected
69e0f04460f4037e01e29f0d9675544f62aafca3< e9eac260369d0cf57ea53df95427125725507a0d affected
cb8890318dde26fc89c6ea67d6e9070ab50b6e91< 43ba9e331559a30000c862eea313248707afa787 affected
25236c91b5ab4a26a56ba2e79b8060cf4e047839< aa82ac51d63328714645c827775d64dbfd9941f3 affected
5.15.149< 5.15.151 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2024-26750

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
af_unix: Drop oob_skb ref before purging queue in GC.
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: af_unix: Drop oob_skb ref before purging queue in GC. syzbot reported another task hung in __unix_gc(). [0] The current while loop assumes that all of the left candidates have oob_skb and calling kfree_skb(oob_skb) releases the remaining candidates. However, I missed a case that oob_skb has self-referencing fd and another fd and the latter sk is placed before the former in the candidate list. Then, the while loop never proceeds, resulting the task hung. __unix_gc() has the same loop just before purging the collected skb, so we can call kfree_skb(oob_skb) there and let __skb_queue_purge() release all inflight sockets. [0]: Sending NMI from CPU 0 to CPUs 1: NMI backtrace for cpu 1 CPU: 1 PID: 2784 Comm: kworker/u4:8 Not tainted 6.8.0-rc4-syzkaller-01028-g71b605d32017 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024 Workqueue: events_unbound __unix_gc RIP: 0010:__sanitizer_cov_trace_pc+0x0/0x70 kernel/kcov.c:200 Code: 89 fb e8 23 00 00 00 48 8b 3d 84 f5 1a 0c 48 89 de 5b e9 43 26 57 00 0f 1f 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 <f3> 0f 1e fa 48 8b 04 24 65 48 8b 0d 90 52 70 7e 65 8b 15 91 52 70 RSP: 0018:ffffc9000a17fa78 EFLAGS: 00000287 RAX: ffffffff8a0a6108 RBX: ffff88802b6c2640 RCX: ffff88802c0b3b80 RDX: 0000000000000000 RSI: 0000000000000002 RDI: 0000000000000000 RBP: ffffc9000a17fbf0 R08: ffffffff89383f1d R09: 1ffff1100ee5ff84 R10: dffffc0000000000 R11: ffffed100ee5ff85 R12: 1ffff110056d84ee R13: ffffc9000a17fae0 R14: 0000000000000000 R15: ffffffff8f47b840 FS: 0000000000000000(0000) GS:ffff8880b9500000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007ffef5687ff8 CR3: 0000000029b34000 CR4: 00000000003506f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: <NMI> </NMI> <TASK> __unix_gc+0xe69/0xf40 net/unix/garbage.c:343 process_one_work kernel/workqueue.c:2633 [inline] process_scheduled_works+0x913/0x1420 kernel/workqueue.c:2706 worker_thread+0xa5f/0x1000 kernel/workqueue.c:2787 kthread+0x2ef/0x390 kernel/kthread.c:388 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1b/0x30 arch/x86/entry/entry_64.S:242 </TASK>
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 36f7371de977f805750748e80279be7e370df85c ~ 6c480d0f131862645d172ca9e25dc152b1a5c3a6 -
Linux Linux 5.15.149 ~ 5.15.151 -

II. Public POCs for CVE-2024-26750

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

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

Other References for CVE-2024-26750 (4)

Same Patch Batch · Linux · 2024-04-04 · 32 CVEs total

CVE-2024-26782 9.8 CRITICAL mptcp: fix double-free on socket dismantle
CVE-2024-26800 9.8 CRITICAL tls: fix use-after-free on failed backlog decryption
CVE-2024-26801 8.8 HIGH Bluetooth: Avoid potential use-after-free in hci_error_reset
CVE-2024-26793 7.8 HIGH gtp: fix use-after-free and null-ptr-deref in gtp_newlink()
CVE-2024-26809 7.8 HIGH netfilter: nft_set_pipapo: release elements in clone only from destroy path
CVE-2024-26808 7.8 HIGH netfilter: nft_chain_filter: handle NETDEV_UNREGISTER for inet/ingress basechain
CVE-2024-26807 7.8 HIGH spi: cadence-qspi: fix pointer reference in runtime PM hooks
CVE-2024-26804 7.8 HIGH net: ip_tunnel: prevent perpetual headroom growth
CVE-2024-26802 7.8 HIGH stmmac: Clear variable when destroying workqueue
CVE-2024-26797 7.8 HIGH drm/amd/display: Prevent potential buffer overflow in map_hw_resources
CVE-2024-26795 7.8 HIGH riscv: Sparse-Memory/vmemmap out-of-bounds fix
CVE-2024-26792 7.8 HIGH btrfs: fix double free of anonymous device after snapshot creation failure
CVE-2024-26789 7.8 HIGH crypto: arm64/neonbs - fix out-of-bounds access on short input
CVE-2024-26786 7.8 HIGH iommufd: Fix iopt_access_list_id overwrite bug
CVE-2024-26799 7.0 HIGH ASoC: qcom: Fix uninitialized pointer dmactl
CVE-2024-26746 dmaengine: idxd: Ensure safe user copy of completion record
CVE-2024-26790 dmaengine: fsl-qdma: fix SoC may hang on 16 byte unaligned read
CVE-2024-26780 af_unix: Fix task hung while purging oob_skb in GC.
CVE-2024-26781 mptcp: fix possible deadlock in subflow diag
CVE-2024-26806 spi: cadence-qspi: remove system-wide suspend helper calls from runtime PM hooks

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

IV. Related Vulnerabilities

V. Comments for CVE-2024-26750

No comments yet


Leave a comment