CVE-2024-26757

Orta

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: md: md_check_recovery() fonksiyonunda salt okunur dizilerin yoksayılmaması Normalde dizi okuma-yazma modunda değilse, md_check_recovery() başlangıçta yeni bir sync_thread kaydetmez. Eğer dizi okuma-yazma modundaysa ve sync_thread kaydedilmişse, md_set_readonly() diziyi salt okunur yapmadan önce sync_thread kaydını siler. md/raid bu davranışı takip eder, dolayısıyla herhangi bir sorun yoktur. f52f5c71f3d4 ("md: fix stopping sync thread") commit'inden sonra, test shell/integrity-caching.sh tarafından şu askıda kalma durumu tetiklenebilir: 1) Dizi salt okunurdur. dm-raid süper bloğu günceller: rs_update_sbs ro = mddev->ro mddev->ro = 0 -> diziyi okuma-yazma olarak ayarlar md_update_sb 2) Eşzamanlı olarak yeni bir sync thread kaydedilir. 3) dm-raid diziyi tekrar salt okunur yapar: rs_update_sbs mddev->ro = ro 4) Diziyi durdurun: raid_dtr md_stop stop_sync_thread set_bit(MD_RECOVERY_INTR, &mddev->recovery); md_wakeup_thread_directly(mddev->sync_thread); wait_event(..., !test_bit(MD_RECOVERY_RUNNING, &mddev->recovery)) 5) Sync thread tamamlanır: md_do_sync set_bit(MD_RECOVERY_DONE, &mddev->recovery); md_wakeup_thread(mddev->thread); 6) Daemon thread, sync thread kaydını silemez: md_check_recovery if (!md_is_rdwr(mddev) && !test_bit(MD_RECOVERY_NEEDED, &mddev->recovery)) return; -> -> MD_RECOVERY_RUNNING temizlenemez, bu nedenle adım 4 askıda kalır; Kök neden, dm-raid'in 'mddev->ro' değerini kendi başına yönetmesidir; ancak dm-raid aslında diziyi salt okunur yapmadan önce sync thread'i durdurmalıdır. Maalesef, dm-raid içindeki 'mddev->ro' işleyicisini yeniden yapılandırmadan önce daha fazla kod incelemem gerekiyor, bu nedenle dm-raid regresyonunu önlemek için şimdilik sorunu kolay yoldan çözelim.

ÖnemOrta
CVSS5.5
İstismar olasılığı—
ÜrünLinux Kernel
Yayın3 Nis 2024
İlk görülme3 Nis 2024
Zayıflık türüCWE-404CWE-404

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel6.7.7 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel4.8 ≤ v < 6.7.7, 6.86.7.7

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.

CVE-2024-26757 · Linux Kernel · Dark Radar