CVE-2026-64437

Yüksək

Təsvir

Linux kernelində aşağıdakı zəiflik aradan qaldırılıb: ksmbd: SMB2_CLOSE və sonra SMB2_CANCEL zamanı təxirə salınmış file_lock-un istifadədən sonra azad edilməsi (use-after-free) düzəldilib f580d27e8928 commit-i ("ksmbd: ikiqat SMB2_CANCEL zamanı təxirə salınmış file_lock-un istifadədən sonra azad edilməsi düzəldilib") smb2_cancel()-in vəziyyəti KSMBD_WORK_CANCELLED olan işi keçməsini təmin etmişdi ki, onun cancel_fn funksiyası ikinci dəfə çağırıla bilməsin. Lakin KSMBD_WORK-un üç vəziyyəti var (ACTIVE, CANCELLED, CLOSED) və eyni azadetmə istehsalçı yolu CLOSED üçün də tətbiq olunur: Bloklayan handle üzərində SMB2_CLOSE -> set_close_state_blocked_works() təxirə salınmış işin vəziyyətini KSMBD_WORK_CLOSED olaraq təyin edir və smb2_lock() işçisini oyadır. İşçi qeyri-ACTIVE erkən çıxışına keçir, file_lock-u locks_free_lock() ilə azad edir və vəziyyət KSMBD_WORK_CANCELLED olmadığı üçün "goto out2" ilə STATUS_RANGE_NOT_LOCKED budağına keçir -- bu da ləğv edilmiş budaq kimi release_async_work()-u keçir. İş conn->async_requests üzərində qalır və canlı cancel_fn = smb2_remove_blocked_lock azad edilmiş file_lock-a işarə edir. Eyni AsyncId üçün sonrakı SMB2_CANCEL daha sonra yalnız KSMBD_WORK_CANCELLED üçün nəzərdə tutulmuş yoxlamadan keçir (onun vəziyyəti KSMBD_WORK_CLOSED-dir), buna görə smb2_cancel() cancel_fn funksiyasını azad edilmiş file_lock üzərində yenidən çağırır -- ilk SMB2_CANCEL əvəzinə SMB2_CLOSE vasitəsilə düzəldilmiş eyni istifadədən sonra azad edilmə: BUG: KASAN: slab-use-after-free in __locks_delete_block __locks_delete_block locks_delete_block ksmbd_vfs_posix_lock_unblock smb2_remove_blocked_lock smb2_cancel <- 2-ci SMB2_CANCEL cancel_fn-i çağırır handle_ksmbd_work Allocated by ...: locks_alloc_lock <- smb2_lock Freed by ...: locks_free_lock <- smb2_lock (qeyri-ACTIVE erkən çıxış) ... cache file_lock_cache of size 192 f580d27e8928 commit-i artıq olan mainline 7.1-rc7-də KASAN ilə autentifikasiyadan keçmiş SMB müştərisi tərəfindən təkrar istehsal edilib; ikiqat SMB2_CANCEL nəzarət halı həmin kerneldə səssizdir, buna görə xəta çapı CLOSE tetikleyicisinə aid edilir. Yalnız ACTIVE təxirə salınmış işin cancel_fn funksiyası çağırıla bilər: hər iki terminal vəziyyət (CANCELLED və CLOSED) file_lock-u azad edən və release_async_work()-u keçən smb2_lock() erkən çıxışına gətirib çıxarır. KSMBD_WORK_ACTIVE üzərində yoxlama aparın ki, hər hansı qeyri-aktiv iş keçilsin.

CiddilikYüksək
CVSS8.8
İstismar ehtimalı—
MəhsulLinux Kernel
Dərc25 iyl 2026
İlk görülmə25 iyl 2026

Necə düzəltmək olar

Yeniləyin
  • linux linux_kernel6.1.178, 6.6.145, 6.12.96, 6.18.39, 7.1, 7.1.4 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
linux linux_kernel6.1.176 ≤ v < 6.1.178, 6.6.143 ≤ v < 6.6.145, 6.12.94 ≤ v < 6.12.96, 6.18.36 ≤ v < 6.18.39, 7.0.13 ≤ v < 7.1, 7.1.1 ≤ v < 7.1.4, 7.16.1.178, 6.6.145, 6.12.96, 6.18.39, 7.1, 7.1.4

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.

CVE-2026-64437 · Linux Kernel · Dark Radar