CVE-2026-98616
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: eth: fbnic: napi vektorları azad edildikdə num_napi sıfırlansın fbn->num_napi hər biri bir IRQ-ya sahib olan aktiv napi vektorlarının sayıdır. PM yolu bu sayı təmizləmədən onları azad etmişdir. fbnic_pm_suspend() funksiyası ndo_stop() vasitəsilə məlumat yolunu ləğv edir və IRQ-ları azad edir, lakin bərpa zamanı yenidən açılacağını bildirmək üçün netif_running()-i true saxlayır. Bərpa prosesi __fbnic_pm_resume() funksiyasında məlumat yolunu yenidən qurur, fbnic_reset_queues() num_napi dəyərini təyin edir və __fbnic_open() vektorları yenidən ayırır. Məlumat yolu ləğv edildikdə və heç vaxt yenidən qurulmadıqda, iki fərqli ssenari altında num_napi azad edilmiş vektorlara işarə etməyə davam edir: - uğursuz PCIe xətalarının bərpası (fbnic_err_slot_reset() -> __fbnic_pm_resume() xəta qaytarır -> PCI_ERS_RESULT_DISCONNECT), buna görə də .resume heç vaxt işə düşmür; və ya - bərpa zamanı __fbnic_open() funksiyasının yarımçıq qalaraq xəta verməsi və fbnic_reset_queues() artıq num_napi dəyərini təyin etdikdən sonra vektorların azad edilməsi ilə prosesin geri qaytarılması. Bu halda netdev num_napi > 0 olduğu halda, lakin napi[] azad edilmiş şəkildə çalışır və nəticədə remove/unbind bağlanma prosesi fbnic_down() -> fbnic_dbg_down() funksiyasına daxil olur və azad edilmiş vektorlara müraciət edir: BUG: kernel NULL pointer dereference, address: 0000000000000210 RIP: fbnic_dbg_down+0x28 Vektorlar azad edildikdə num_napi sıfırlansın: suspend ləğvi zamanı (uğurlu bərpa onu __fbnic_open()-dən əvvəl yenidən qurur) və bərpa zamanı open xətası baş verdikdə. Artıq ndo_stop() çağırışı boş napi[] massivində gəzinti edəcəkdir. Normal ndo_stop() down/up dövrünə toxunulmayıb və növbəti ndo_open() üçün num_napi saxlanılır.
Necə düzəltmək olar
- Linux Linuxc5b5aee41b9f5ed0743344be1c7b544555fa3cb9, 4f4b767ffea7653a00904383908536e754f8ef5b, 4bcc4a92c603fe7f062cea22e20da2e0ad6b12c3 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | bc6107771bb4be3009168cfda24d22131c026fe8 ≤ v < c5b5aee41b9f5ed0743344be1c7b544555fa3cb9, bc6107771bb4be3009168cfda24d22131c026fe8 ≤ v < 4f4b767ffea7653a00904383908536e754f8ef5b, bc6107771bb4be3009168cfda24d22131c026fe8 ≤ v < 4bcc4a92c603fe7f062cea22e20da2e0ad6b12c3, 6.11 | c5b5aee41b9f5ed0743344be1c7b544555fa3cb9, 4f4b767ffea7653a00904383908536e754f8ef5b, 4bcc4a92c603fe7f062cea22e20da2e0ad6b12c3 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.