CVE-2024-56759
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: btrfs: ağac blokunun COW əməliyyatı zamanı və izləmə aktiv olduqda yaranan use-after-free xətası düzəldildi Ağac bloku üçün COW əməliyyatı yerinə yetirilərkən, btrfs_cow_block() funksiyasında, trace_btrfs_cow_block() tracepoint-i və preemption (CONFIG_PREEMPT=y) aktiv olduqda, tracepoint kodu daxilində COW edilmiş extent buferi ilə bağlı use-after-free xətası yarana bilər. Bunun səbəbi odur ki, btrfs_search_slot() kimi btrfs_cow_block()-u çağıran bəzi yollarda biz @buf extent buferinin son istinadını saxlayırıq, buna görə də btrfs_force_cow_block() free_extent_buffer_stale(buf) funksiyasını çağırdıqda @buf extent buferinin son istinadını silir və extent buferinin RCU vasitəsilə azad edilməsini təyin edir. Bu o deməkdir ki, əgər preemption dəstəklənən nüvədəyiksə, cari tapşırıq trace_btrfs_cow_block() çağırılmamışdan əvvəl kəsilə bilər və trace_btrfs_cow_block() çağırılan ana qədər extent buferi artıq azad edilmiş olur ki, bu da use-after-free xətasına gətirib çıxarır. Bu problem, trace_btrfs_cow_block() funksiyasının btrfs_cow_block()-dan btrfs_force_cow_block()-a, COW edilmiş extent buferi azad edilməzdən əvvələ köçürülməsi ilə həll edilmişdir. Bunun həmçinin tree defrag kodu daxilində, defrag.c:btrfs_realloc_node() hissəsində tracepoint-in çağırılması kimi yan təsiri var, çünki orada btrfs_force_cow_block() çağırılır, lakin bu normaldır və əslində orada çatışmırdı.
Necə düzəltmək olar
- linux linux_kernel6.12.8 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 | v < 6.12.8, 6.13 | 6.12.8 |
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.