CVE-2024-53176

Kritik

Təsvir

Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: smb: Unmount zamanı bütün keşlənmiş dir instansiyalarının öz dentry-lərini buraxdığından əmin olun Unmount prosesi (cifs_kill_sb() funksiyasının close_all_cached_dirs()-i çağırması) müxtəlif keşlənmiş kataloq əməliyyatları ilə yarış vəziyyətinə (race condition) girə bilər ki, bu da nəticədə dentry-lərin buraxılmamasına və aşağıdakı kernel BUG-larına səbəb olur: BUG: Dentry ffff88814f37e358{i=1000000000080,n=/} still in use (2) [unmount of cifs cifs] VFS: Busy inodes after unmount of cifs (cifs) ------------[ cut here ]------------ kernel BUG at fs/super.c:661! Bu, bir cfid təmizlənmə prosesində olduğu zaman və cfids->entries siyahısından çıxarıldığı zaman baş verir, bura daxildir: - Serverdən lease break qəbul edilməsi - Serverin yenidən qoşulmasının invalidate_all_cached_dirs()-i tetikləməsi, hansı ki, bütün cfid-ləri siyahıdan silir - Laundromat axınına köhnə cfid-nin vaxtının bitdiyinə qərar verməsi. Bu problemləri həll etmək üçün dentry-nin buraxılması yeni əlavə edilmiş cfid_put_wq iş növbəsindəki (workqueue) növbəyə alınmış iş vasitəsilə həyata keçirilir və close_all_cached_dirs() bildiyi bütün dentry-ləri buraxdıqdan sonra həmin iş növbəsini boşaldır. Bu, qlobal iş növbəsidir (mount ilə məhdudlaşdırılmayıb), lakin növbəyə alınmış iş minimumdur. cfid-ni təmizləmək üçün son təmizlik işi serverclose_wq iş növbəsində növbəyə alınmış iş vasitəsilə yerinə yetirilir; bu, close_all_cached_dirs()-in heç bir server əməliyyatı üzrə bloklanmaması üçün dentry-lərin buraxılmasından ayrı şəkildə edilir. Hər iki növbəyə alınmış iş, iş davam edərkən həmin obyektlərin azad edilməməsi üçün cfid istinadı və tcon istinadı ilə çağırılmağı gözləyir. Eyni zamanda, close_all_cached_dirs()-ə düzgün kilidləmə (locking) və cfid->dentry-nin azad edilməsinə ətrafda kilidləmə əlavə edildi.

CiddilikKritik
CVSS9.8
İstismar ehtimalı—
MəhsulLinux Kernel
Dərc27 dek 2024
İlk görülmə27 dek 2024

Necə düzəltmək olar

Yeniləyin
  • linux linux_kernel6.6.64, 6.11.11, 6.12.2 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
linux linux_kernel6.1 ≤ v < 6.6.64, 6.7 ≤ v < 6.11.11, 6.12 ≤ v < 6.12.26.6.64, 6.11.11, 6.12.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.

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.