CVE-2026-98020
Açıklama
Linux kernel'da aşağıdaki güvenlik açığı giderilmiştir: pds_core: sıfırlama sırasında cmd_regs erişimi ile BAR unmap arasındaki yarış durumu düzeltildi pdsc_reset_prepare() ve pdsc_reset_done()'ın pdsc_map_bars() hata yolu, devcmd_lock olmadan cmd_regs'i temizler/iounmap yapar ve pdsc_legacy_firmware_update()'ın indirme döngüsü, kilidi bırakıp yeniden aldıktan sonra kontrol etmeden cmd_regs referansını çözer. Devlink flash işlemiyle eşzamanlı bir FLR, devam eden bir devcmd sırasında cmd_regs'in haritasını kaldırabilir (unmap), bu da bir NULL deref veya haritalanmamış MMIO'ya yazmaya neden olur. BAR unmap/remap işlemleri boyunca devcmd_lock alınmalı ve indirme döngüsünde cmd_regs yeniden kontrol edilmelidir. Yalnızca PF, cmd_regs'i haritalandırır ve devcmd çalıştırır; bu nedenle, pdsc_remove() ve pdsc_reset_done()'ın halihazırda yaptığı gibi, VF üzerinde unmap işlemi atlanmalıdır. Tamamen kilitlenmemiş pencere içinde tamamlanan bir sıfırlama, imaj için bir doğruluk sorunu teşkil etmez: cihaz güncelleme oturumunu temizler, böylece devam ettirilen indirme reddedilir ve flash yuvasına yazmadan önce hazırlanan imajı doğrulayarak onu etkinleştirmek yerine PDS_RC_BAD_FW raporlar. pdsc_unmap_bars() ayrıca info_regs, intr_status ve intr_ctrl kayıtlarını da temizler. Bunların kesme ve başlatma/durdurma okuyucuları, kesmeleri serbest bırakan ve kuyrukları yıkan pdsc_fw_down() tarafından unmap işleminden önce susturulur. Debugfs okuyucuları ise bu dosyalar bir sıfırlamadan daha uzun süre var olduğu için susturulmaz; bu durum önceden mevcuttur ve burada kapsam dışıdır.
Nasıl düzeltilir
- Linux Linux0bf9f3bae3c4b1eadb7a2bf63350333db7dac0d9, 2cc697565fd19b5ba2d100cdd4a20dd6d263abc2, fa31bd14c5042c6315bb2182c963f03ca6e79ca4, 09f831bfe39de5b8026fefb3d106b5cc93272170, 7980325b2f71e3f65c1323c39792e2455da6fab6, 6.6.158, 6.8 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | f6ec6ac9432941ec85a2221c91b1ecfc85680d89 ≤ v < 0bf9f3bae3c4b1eadb7a2bf63350333db7dac0d9, e96094c1d11cce4deb5da3c0500d49041ab845b8 ≤ v < 2cc697565fd19b5ba2d100cdd4a20dd6d263abc2, e96094c1d11cce4deb5da3c0500d49041ab845b8 ≤ v < fa31bd14c5042c6315bb2182c963f03ca6e79ca4, e96094c1d11cce4deb5da3c0500d49041ab845b8 ≤ v < 09f831bfe39de5b8026fefb3d106b5cc93272170, e96094c1d11cce4deb5da3c0500d49041ab845b8 ≤ v < 7980325b2f71e3f65c1323c39792e2455da6fab6, 692488941283d72362274620b9abd28109fc459f, 6.6.16 ≤ v < 6.6.158, 6.7.4 ≤ v < 6.8, 6.8 | 0bf9f3bae3c4b1eadb7a2bf63350333db7dac0d9, 2cc697565fd19b5ba2d100cdd4a20dd6d263abc2, fa31bd14c5042c6315bb2182c963f03ca6e79ca4, 09f831bfe39de5b8026fefb3d106b5cc93272170, 7980325b2f71e3f65c1323c39792e2455da6fab6, 6.6.158, 6.8 |
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.
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.