CVE-2026-31702
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: f2fs: f2fs_compress_write_end_io() funksiyasında sbi-nin use-after-free xətası düzəldildi f2fs_compress_write_end_io() funksiyasında dec_page_count(sbi, type) çağırışı F2FS_WB_CP_DATA sayğacını sıfıra endirə bilər ki, bu da paralel olaraq unmount prosesini yerinə yetirən CPU-da f2fs_put_super() daxilindəki f2fs_wait_on_all_pages() funksiyasının blokunu açır. Daha sonra unmount yolu f2fs_destroy_page_array_cache(sbi) funksiyasını çağırır, bu isə kmem_cache_destroy() vasitəsilə sbi->page_array_slab-i və nəticədə kfree(sbi)-ni məhv edir. Bu zaman bio tamamlanma callback-i hələ də icra olunur: o, page_array_free(sbi, ...) hissəsinə çatdıqda, kmem_cache_free()-i çağırmaq üçün artıq məhv edilmiş slab keş olan sbi->page_array_slab-ə müraciət edir və bu da use-after-free xətasına səbəb olur. Bu, CVE-2026-23234 ilə eyni növ xətadır (hansı ki, data.c faylında f2fs_write_end_io() funksiyasındakı ekvivalent yarış şəraitini - race condition - düzəltmişdi), lakin həmin düzəliş tərəfindən əhatə edilməyən sıxılmış writeback tamamlanma yolunda baş verir. Bunu düzəltmək üçün dec_page_count() funksiyası page_array_free()-dən sonraya keçirildi, beləliklə, unmount prosesinin blokunu aça biləcək sayğac azalmasından əvvəl bütün sbi müraciətləri tamamlanır. Sonuncu olmayan foliolarda (harada ki, cic->pending_pages üzərində atomic_dec_return sıfırdan fərqlidir), dec_page_count geri dönməzdən dərhal əvvəl çağırılır — bu yolda page_array_free-yə çatılmadığı üçün azalmadan sonra sbi-yə müraciət baş vermir. Sonuncu folio üçün isə page_array_free, F2FS_WB_CP_DATA sayğacı hələ də sıfırdan fərqli olduğu müddətdə (bu folio onu hələ azaltmayıb) işləyir, sbi-ni aktiv saxlayır və dec_page_count son əməliyyat kimi icra olunur.
Necə düzəltmək olar
- linux linux_kernel6.6.136, 6.12.84, 6.18.25, 7.0.2 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| linux linux_kernel | 5.6 ≤ v < 6.6.136, 6.7 ≤ v < 6.12.84, 6.13 ≤ v < 6.18.25, 6.19 ≤ v < 7.0.2, 7.1 | 6.6.136, 6.12.84, 6.18.25, 7.0.2 |
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.