CVE-2026-68173

Yüksek

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: ublk: ub->completion yerine ublk_dev_ready() üzerinde beklenmesi ub->completion yalnızca başarılı bir START_USER_RECOVERY tarafından yeniden kurulur. Eğer ublk sunucusu, biri olmadan END_USER_RECOVERY gönderirse - örneğin START işlemi -EBUSY ile başarısız olur ve hata yoksayılırsa - bekleme işlemi önceki kurtarma döngüsünün bayat tamamlanmasıyla karşılanır; cihaz LIVE olarak işaretlenir ve FETCH akışı hala çalışırken ve ubq->canceling hala ayarlanmışken yeniden kuyruğa alma listesi tetiklenir. Tetikleme, daha önce yeniden kuyruğa alınmış bir isteği yeniden dağıtır, __ublk_queue_rq_common() ->canceling durumunu görür ve bunu __ublk_abort_rq() aracılığıyla tekrar park eder ve son FETCH ->canceling durumunu temizledikten sonra hiçbir şey yeniden kuyruğa alma listesini tekrar tetiklemez: istek, etiketini tutarken orada mahsur kalır. Eğer bu, flush mekanizmasının flush_rq'su ise, sonraki her fsync kesilemez uykuda birikir ve kapatma işlemi etiket boşaltmada asılı kalır. Bu durum, daemon çökme kurtarmasından sonra ublk üzerindeki ext4 ile kaybedilen bir PREFLUSH raporuyla eşleşmektedir. ub->completion, "her kuyruk tüm G/Ç komutlarını getirmiş" seviye koşulu için bir vekil olarak kullanılan kenar tetiklemeli bir mandaldır; bu koşul gerileyebilir (F_BATCH'in UNPREP'i, daemon ölümü) ve yeniden kurulumu atlanabilir. Bunu kaldırın ve bunun yerine gerçek koşulda bekleyin: yeni yardımcı fonksiyon olan ublk_wait_dev_ready_and_lock(), wait_var_event_interruptible() aracılığıyla ublk_dev_ready() üzerinde bekler, ublk_mark_io_ready() tarafından uyandırılır, ardından ub->mutex altında bunu yeniden kontrol eder, gerileme durumunda tekrar bekler ve mutex tutulmuş ve hazır olma durumu garanti edilmiş şekilde döner. Hazır olma durumu, son kuyruğun ->canceling durumunu temizleyen aynı ub->mutex kritik bölümünde doğru hale gelir, böylece END_USER_RECOVERY, cihazı kesinlikle ->canceling temizlendikten sonra LIVE olarak işaretler ve yeniden kuyruğa alma listesini tetikler. Bekleme işlemi kesilebilir kalmaya devam eder, böylece daemon'ı ölen bir sunucuya hala sinyal gönderilebilir. ublk_ctrl_start_dev() için bu işlem, F_BATCH ready->UNPREP gerilemesinde hızlı hata veren -EINVAL işlemini, cihaz tekrar hazır olana kadar bekleme işlemiyle değiştirir.

ÖnemYüksek
CVSS7.1
İstismar olasılığı—
ÜrünLinux
Yayın10 Ağu 2026
İlk görülme10 Ağu 2026

Nasıl düzeltilir

Güncelleyin
  • Linux Linux7dd26adf7e7d482af524e3a0cca4a81ef7c159d0, 8f188dd11a1c2ad94caeaee36ef68bb8221d4a12, 432a9b2780c0a01caf547bd1fc2fcf28aeb8d173, 6.15 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
Linux Linux728cbac5fe219d3b8a21a0688a08f2b7f8aeda2b ≤ v < 7dd26adf7e7d482af524e3a0cca4a81ef7c159d0, 728cbac5fe219d3b8a21a0688a08f2b7f8aeda2b ≤ v < 8f188dd11a1c2ad94caeaee36ef68bb8221d4a12, 728cbac5fe219d3b8a21a0688a08f2b7f8aeda2b ≤ v < 432a9b2780c0a01caf547bd1fc2fcf28aeb8d173, 42ea64e01c96e594fb4f80c54dfe4f934d008a6e, 6.14.6 ≤ v < 6.15, 6.157dd26adf7e7d482af524e3a0cca4a81ef7c159d0, 8f188dd11a1c2ad94caeaee36ef68bb8221d4a12, 432a9b2780c0a01caf547bd1fc2fcf28aeb8d173, 6.15

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.