CVE-2026-64205
Təsvir
Linux nüvəsində aşağıdakı zəiflik aradan qaldırılıb: i2c: i801: xəta yolunda aparat vəziyyət maşınının korlanmasının düzəldilməsi Eyni vaxtda aparılan Fuzzing zamanı i2c-i801 drayverində ciddi livelock və nəticədə Hung Task panikası müşahidə edilmişdir. Çökmə, i801_access() funksiyasının xəta emalı yolunda aparat reyestrinin şərtsiz təmizlənməsi səbəbindən baş verir. i801_check_pre() uğursuz olduqda (məsələn, SMBus kontrollerindən BIOS/ACPI tərəfindən aktiv istifadə edildiyi üçün -EBUSY qaytarıldıqda), nüvə əslində aparat mülkiyyətini əldə etmir. Lakin kod 'out' etiketine keçir və aşağıdakını icra edir: iowrite8(SMBHSTSTS_INUSE_STS | STATUS_FLAGS, SMBHSTSTS(priv)); Bu, kontrollerə sahib olmadan INUSE_STS kilidini məcburi şəkildə təmizləyir və aparat status bayraqlarını sıfırlayır. Bu hərəkət davam edən BIOS/ACPI tranzaksiyalarını kəsir və SMBus aparat vəziyyət maşınını tamamilə korlayır. Nəticədə, bütün növbəti i801_access() çağırışları ilkin yoxlama mərhələsində uğursuz olur və sonsuz sayda "SMBus is busy, can't use it!" xəta loqlarının yaranmasına səbəb olur. Yavaş serial konsol vasitəsilə bu printk axını CPU-nu monopollaşdırır (Console Livelock), mmap_lock down_read semaforunu əldə etməyə çalışan digər prosesləri bloklayır və sonda hung task watchdog-u tetikləyir. Bu problem, 'out' etiketini aparat reyestrinin təmizlənməsindən aşağıya köçürməklə həll edilir. Əgər i801_check_pre() uğursuz olarsa, biz təhlükəsiz şəkildə iowrite8()-dən yan keçirik və yalnız proqram təminatı kilidlərini (pm_runtime və mutex) azad edirik ki, bu da heç vaxt əldə edilməmiş resursların azad edilməməsi qaydasına ciddi şəkildə riayət olunmasını təmin edir.
Necə düzəltmək olar
- linux linux_kernel6.6.148, 6.12.101, 6.18.39, 7.1.4 və ya daha yeni versiya
- git.kernel.org/stable/c/00904687b9c5527d569d9a1ca72119823e735a61
- git.kernel.org/stable/c/10dd1a736d557e310a77117832874729a0175d57
- git.kernel.org/stable/c/2ef69871b313aa0f02182795f5e0f5aa455f203c
- git.kernel.org/stable/c/bb5133a7d5f3fe5c387770e25f2e00e682ce11ed
- git.kernel.org/stable/c/ef5a347532932f58748dad485c15039f5168c377
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| linux linux_kernel | 6.3 ≤ v < 6.6.148, 6.7 ≤ v < 6.12.101, 6.13 ≤ v < 6.18.39, 6.19 ≤ v < 7.1.4 | 6.6.148, 6.12.101, 6.18.39, 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.
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.