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

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2024-39476— md/raid5: fix deadlock that raid5d() wait for itself to clear MD_SB_CHANGE_PENDING

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 4.3 Difficulty: Moderate EPSS 0.18% · P8

Possible ATT&CK Techniques 1 AI

T1499 · Endpoint Denial of Service

Affected Version Matrix 28

VendorProduct Version RangeStatus
Linux Linux f3d55bd5b7b928ad82f8075d89c908702f3593ab< b32aa95843cac6b12c2c014d40fca18aef24a347 affected
1c00bb624cd084e2006520ad0edacaff0fb941c4< 634ba3c97ec413cb10681c7b196db43ee461ecf4 affected
782b3e71c957991ac8ae53318bc369049d49bb53< aa64464c8f4d2ab92f6d0b959a1e0767b829d787 affected
9e86dffd0b02594d2e7c60c6db9e889c0395414b< 098d54934814dd876963abfe751c3b1cf7fbe56a affected
5e2cf333b7bd5d3e62595a44d598a254c697cd74< 3f8d5e802d4cedd445f9a89be8c3fd2d0e99024b affected
5e2cf333b7bd5d3e62595a44d598a254c697cd74< cd2538e5af495b3c747e503db346470fc1ffc447 affected
5e2cf333b7bd5d3e62595a44d598a254c697cd74< e332a12f65d8fed8cf63bedb4e9317bb872b9ac7 affected
5e2cf333b7bd5d3e62595a44d598a254c697cd74< 151f66bb618d1fd0eeb84acb61b4a9fa5d8bb0fa affected
… +20 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2024-39476

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
md/raid5: fix deadlock that raid5d() wait for itself to clear MD_SB_CHANGE_PENDING
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: md/raid5: fix deadlock that raid5d() wait for itself to clear MD_SB_CHANGE_PENDING Xiao reported that lvm2 test lvconvert-raid-takeover.sh can hang with small possibility, the root cause is exactly the same as commit bed9e27baf52 ("Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d"") However, Dan reported another hang after that, and junxiao investigated the problem and found out that this is caused by plugged bio can't issue from raid5d(). Current implementation in raid5d() has a weird dependence: 1) md_check_recovery() from raid5d() must hold 'reconfig_mutex' to clear MD_SB_CHANGE_PENDING; 2) raid5d() handles IO in a deadloop, until all IO are issued; 3) IO from raid5d() must wait for MD_SB_CHANGE_PENDING to be cleared; This behaviour is introduce before v2.6, and for consequence, if other context hold 'reconfig_mutex', and md_check_recovery() can't update super_block, then raid5d() will waste one cpu 100% by the deadloop, until 'reconfig_mutex' is released. Refer to the implementation from raid1 and raid10, fix this problem by skipping issue IO if MD_SB_CHANGE_PENDING is still set after md_check_recovery(), daemon thread will be woken up when 'reconfig_mutex' is released. Meanwhile, the hang problem will be fixed as well.
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 f3d55bd5b7b928ad82f8075d89c908702f3593ab ~ b32aa95843cac6b12c2c014d40fca18aef24a347 -
Linux Linux 6.1 -

II. Public POCs for CVE-2024-39476

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

登录查看更多情报信息。

Patches & Fixes for CVE-2024-39476 (1)

Other References for CVE-2024-39476 (7)

Same Patch Batch · Linux · 2024-07-05 · 14 CVEs total

CVE-2024-39480 8.4 HIGH kdb: Fix buffer overflow during tab-complete
CVE-2024-39482 7.8 HIGH bcache: fix variable length array abuse in btree_iter
CVE-2024-39481 7.8 HIGH media: mc: Fix graph walk in media_pipeline_start
CVE-2024-39479 7.8 HIGH drm/i915/hwmon: Get rid of devm
CVE-2024-39478 7.8 HIGH crypto: starfive - Do not free stack buffer
CVE-2024-39477 7.8 HIGH mm/hugetlb: do not call vma_add_reservation upon ENOMEM
CVE-2024-39472 7.3 HIGH xfs: fix log recovery buffer allocation for the legacy h_size fixup
CVE-2024-39483 7.1 HIGH KVM: SVM: WARN on vNMI + NMI window iff NMIs are outright masked
CVE-2024-39485 media: v4l: async: Properly re-initialise notifier entry in unregister
CVE-2024-39484 mmc: davinci: Don't strip remove function when driver is builtin
CVE-2024-39475 fbdev: savage: Handle err return when savagefb_check_var failed
CVE-2024-39474 mm/vmalloc: fix vmalloc which may return null if called with __GFP_NOFAIL
CVE-2024-39473 ASoC: SOF: ipc4-topology: Fix input format query of process modules without base extension

IV. Related Vulnerabilities

V. Comments for CVE-2024-39476

No comments yet


Leave a comment