CVE-2024-26704

Yüksək

Təsvir

Linux nüvəsində aşağıdakı zəiflik aradan qaldırılıb: ext4: yanlış extents moved_len səbəbindən blokların iki dəfə azad edilməsi (double-free) problemi düzəldildi ext4_move_extents() funksiyasında moved_len yalnız bütün köçürmələr uğurla yerinə yetirildikdə yenilənir və yalnız moved_len sıfırdan fərqli olduqda orig_inode və donor_inode öncədən ayrılmış sahələrini (preallocations) ləğv edir. Bəzi extent-lər uğurla köçürüldükdən sonra dövr operatoru çıxış etmədikdə, moved_len yenilənmir və 0 olaraq qalır, buna görə də öncədən ayrılmış sahələri ləğv etmir. Əgər köçürülmüş extent-lər öncədən ayrılmış extent-lərlə üst-üstə düşərsə, kəsişən extent-lər ext4_mb_release_inode_pa() və ext4_process_freed_data() funksiyalarında iki dəfə azad edilir (commit 94d7c16cbbbd ("ext4: Fix double-free of blocks with EXT4_IOC_MOVE_EXT") sənədində təsvir edildiyi kimi) və bb_free iki dəfə artırılır. Beləliklə, trim icra edildikdə, bb_free sıfır olmadığı, lakin bb_fragments sıfır olduğu üçün mb_update_avg_fragment_size() funksiyasında sıfıra bölmə xətası baş verir. Buna görə də, problemin qarşısını almaq üçün hər bir extent köçürməsindən sonra move_len yenilənir.

CiddilikYüksək
CVSS7.8
İstismar ehtimalı—
MəhsulLinux Kernel
Dərc3 apr 2024
İlk görülmə3 apr 2024

Necə düzəltmək olar

Yeniləyin
  • linux linux_kernel4.19.307, 5.4.269, 5.10.210, 5.15.149, 6.1.79, 6.6.18, 6.7.6 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
linux linux_kernel3.18 ≤ v < 4.19.307, 4.20 ≤ v < 5.4.269, 5.5 ≤ v < 5.10.210, 5.11 ≤ v < 5.15.149, 5.16 ≤ v < 6.1.79, 6.2 ≤ v < 6.6.18, 6.7 ≤ v < 6.7.6, 6.84.19.307, 5.4.269, 5.10.210, 5.15.149, 6.1.79, 6.6.18, 6.7.6
debian debian_linux10.0—

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.

Intelligence 360 paketində

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.