md/raid5: fix deadlock that raid5d() wait for itself to clear MD_SB_CHANGE_PENDING
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.
- Yayın
- 5 Tem 2024
- Güncelleme
- 17 Haz 2026
- EPSS
- %0,2 · 7. yüzdelik
- CWE
- CWE-667
Takip etmek için giriş yap · Takip ettiğin kayıt KEV’e girer, istismarı çıkar ya da güncellenirse bildirim alırsın.
Rapor araçları
Aksiyon skoru
22
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 22 / 40 · 5.5 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %0,2
CISA SSVC kararı
- Sömürü
- yok
- Otomatikleştirilebilir
- hayır
- Teknik etki
- kısmi
Vulnrichment: CISA'nın karar ağacı girdileri.
Etkilenen sistemler
| Üretici | Ürün | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Etkilenen sürümler
NVD sürüm aralıkları (katalogdaki ürünler için). Stack’ine sürümle eklersen eşleşme bunlarla yapılır.
- linux linux kernel4.19 ve sonrası · 4.19.316 öncesi
- linux linux kernel5.4 ve sonrası · 5.4.278 öncesi
- linux linux kernel5.10 ve sonrası · 5.10.219 öncesi
- linux linux kernel5.15 ve sonrası · 5.15.161 öncesi
- linux linux kernel6.1 ve sonrası · 6.1.94 öncesi
- linux linux kernel6.6 ve sonrası · 6.6.34 öncesi
- linux linux kernel6.9 ve sonrası · 6.9.5 öncesi
Üreticinin bildirdiği sürümler
Kaydı açan otorite (Linux) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
Linux Linux
- 7d808fe6af8409cf9f46ed2b10840e5788985e9b, 2cab058f2b147e0b7c01546ba00445e5701861f5, 91962e40ec3d26e291db230cd45b302da2aff200, 6.1etkilenir
- f3d55bd5b7b928ad82f8075d89c908702f3593ab ve sonrası · b32aa95843cac6b12c2c014d40fca18aef24a347 öncesietkilenir · git
- 1c00bb624cd084e2006520ad0edacaff0fb941c4 ve sonrası · 634ba3c97ec413cb10681c7b196db43ee461ecf4 öncesietkilenir · git
- 782b3e71c957991ac8ae53318bc369049d49bb53 ve sonrası · aa64464c8f4d2ab92f6d0b959a1e0767b829d787 öncesietkilenir · git
- 9e86dffd0b02594d2e7c60c6db9e889c0395414b ve sonrası · 098d54934814dd876963abfe751c3b1cf7fbe56a öncesietkilenir · git
- 5e2cf333b7bd5d3e62595a44d598a254c697cd74 ve sonrası · 3f8d5e802d4cedd445f9a89be8c3fd2d0e99024b öncesietkilenir · git
- 5e2cf333b7bd5d3e62595a44d598a254c697cd74 ve sonrası · cd2538e5af495b3c747e503db346470fc1ffc447 öncesietkilenir · git
- 5e2cf333b7bd5d3e62595a44d598a254c697cd74 ve sonrası · e332a12f65d8fed8cf63bedb4e9317bb872b9ac7 öncesietkilenir · git
- 5e2cf333b7bd5d3e62595a44d598a254c697cd74 ve sonrası · 151f66bb618d1fd0eeb84acb61b4a9fa5d8bb0fa öncesietkilenir · git
- 4.19.262 ve sonrası · 4.19.316 öncesietkilenir · semver
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| Debian:12 | linux | 6.1.94-1 öncesi | 6.1.94-1 |
| Debian:13 | linux | 6.9.7-1 öncesi | 6.9.7-1 |
| Red Hat:rhel_eus:8.8::baseos | bpftool | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | bpftool-debuginfo | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-abi-stablelists | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-core | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debug | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debug-core | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debug-debuginfo | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debug-devel | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debug-modules | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debug-modules-extra | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debuginfo | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debuginfo-common-aarch64 | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debuginfo-common-ppc64le | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debuginfo-common-s390x | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-debuginfo-common-x86_64 | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-devel | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-doc | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-modules | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-modules-extra | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-tools | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
| Red Hat:rhel_eus:8.8::baseos | kernel-tools-debuginfo | 0:4.18.0-477.75.1.el8_8 öncesi | 0:4.18.0-477.75.1.el8_8 |
+12
Aynı üründe
linux: tüm kayıtlarAynı birincil ürünün en yüksek skorlu diğer kayıtları.
- CVE-2022-0847A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe KEV89Hemen
- CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV85Hemen
- CVE-2016-5195Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by leveraging incorrect haKEV83Hemen
- CVE-2019-13272In the Linux kernel before 5.1.17, ptrace_link in kernel/ptrace.c mishandles the recording of the credentials of a process that wants to creKEV77Bu hafta
- CVE-2013-6282The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the v6k and v7 ARM platforms do not validate certain addKEV77Bu hafta
- CVE-2013-2094The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9 uses an incorrect integer data type, which allows loKEV77Bu hafta
Düzeltme
Hangi sürüme geçmeli
Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.
| Ürün / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| Linux Linux | 098d54934814dd876963abfe751c3b1cf7fbe56a | Üretici (CNA) |
| Linux Linux | 151f66bb618d1fd0eeb84acb61b4a9fa5d8bb0fa | Üretici (CNA) |
| Linux Linux | 3f8d5e802d4cedd445f9a89be8c3fd2d0e99024b | Üretici (CNA) |
| Linux Linux | 4.15 | Üretici (CNA) |
| Linux Linux | 4.19.316 | Üretici (CNA) |
| Linux Linux | 5.10.219 | Üretici (CNA) |
| Linux Linux | 5.15.161 | Üretici (CNA) |
| Linux Linux | 5.20 | Üretici (CNA) |
| Linux Linux | 5.4.278 | Üretici (CNA) |
| Linux Linux | 6.1 | Üretici (CNA) |
| Linux Linux | 634ba3c97ec413cb10681c7b196db43ee461ecf4 | Üretici (CNA) |
| Linux Linux | aa64464c8f4d2ab92f6d0b959a1e0767b829d787 | Üretici (CNA) |
| Linux Linux | b32aa95843cac6b12c2c014d40fca18aef24a347 | Üretici (CNA) |
| Linux Linux | cd2538e5af495b3c747e503db346470fc1ffc447 | Üretici (CNA) |
| Linux Linux | e332a12f65d8fed8cf63bedb4e9317bb872b9ac7 | Üretici (CNA) |
| debian:linux | 6.1.94-1 · Debian:12 | Paket deposu (OSV) |
| red hat:bpftool | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:bpftool-debuginfo | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel-abi-stablelists | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel-core | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel-debug | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel-debug-core | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel-debug-debuginfo | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel-debug-devel | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel-debug-modules | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel-debug-modules-extra | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
| red hat:kernel-debuginfo | 0:4.18.0-477.75.1.el8_8 · Red Hat:rhel_eus:8.8::baseos | Paket deposu (OSV) |
İstismar durumu
Bilinen kamuya açık istismar yok
Şu an kamuya açık bir istismar görülmedi. Bu, güvende olduğunuz anlamına gelmez; yalnızca eşiğin biraz daha yüksek olduğunu gösterir.
Araştırma bağlamı
Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.
Zaman çizelgesi
Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.
Yayın dışında tarihli olay yok.
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
Yama ve commit bağlantıları
Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.
Referanslarda commit ya da PR bağlantısı yok.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıkla, aynı araştırmacının diğer kayıtlarını gör.
CNA kaydında kredi yok.
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
Gece hesaplanan ilişki yok.
Zincir adayları
Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.
—
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- Sisteme yerel erişimi olan biri tetikleyebilir.
- Düşük yetkili bir hesap yeterli.
- Kullanıcının bir şey yapması gerekmez.
- Özel bir koşul gerekmez; tekrarlanabilir.
Başarılı olursa
- Gizlilik
- yok
- Bütünlük
- yok
- Erişilebilirlik
- yüksek · hizmet durdurulabilir
- Saldırı vektörü
- Yerel
- Karmaşıklık
- Düşük
- Gereken yetki
- Düşük
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- Değişmez
- Gizlilik etkisi
- Yok
- Bütünlük etkisi
- Yok
- Erişilebilirlik etkisi
- Yüksek
Zayıflık sınıfı (CWE)
CWE-667 · Improper LockingCVSS vektörü
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
nvd-primary
Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Noroxi analizi
Bu kayıt için henüz Noroxi analizi yok
385 binden fazla zafiyetin tamamına elle analiz yazmıyoruz; bu dürüst olmazdı. Öne çıkan ve sahada etkisi olan zafiyetler için mekanizma, tespit ve kapatma adımlarını ekibimiz yazıyor.
Bu ürünü kullanıyoruz, yardım isteyinDeğişiklik günlüğü
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
- git.kernel.org/stable/c/098d54934814dd876963abfe751c3b1cf7fbe56a
- git.kernel.org/stable/c/151f66bb618d1fd0eeb84acb61b4a9fa5d8bb0fa
- git.kernel.org/stable/c/3f8d5e802d4cedd445f9a89be8c3fd2d0e99024b
- git.kernel.org/stable/c/634ba3c97ec413cb10681c7b196db43ee461ecf4
- git.kernel.org/stable/c/aa64464c8f4d2ab92f6d0b959a1e0767b829d787
- git.kernel.org/stable/c/b32aa95843cac6b12c2c014d40fca18aef24a347
- git.kernel.org/stable/c/cd2538e5af495b3c747e503db346470fc1ffc447
- git.kernel.org/stable/c/e332a12f65d8fed8cf63bedb4e9317bb872b9ac7
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.