CVE-2026-16148
Təsvir
ITE it82xx2 USB cihaz-kontroller drayveri, drivers/usb/udc/udc_it82xx2.c faylındakı it82xx2_enable() (.enable operatoru) funksiyasının daxilində k_work_init_delayable(&priv->suspended_work, suspended_handler) vasitəsilə şin-asılılıq (bus-suspend) aşkarlama işini başlatmışdır. Bu iş elementi USB şini aktiv olduğu müddətcə əsasən davamlı olaraq planlaşdırılır: kəsmə idarəedicisi hər bir SOF freymində onu yenidən planlaşdırır və suspended_handler() özünü yenidən planlaşdırır, buna görə də onun vaxtaşımı düyünü normalda nüvənin vaxtaşımı siyahısına / iş növbəsinin gözləmə növbəsinə bağlanır. k_work_init_delayable() (kernel/work.c) məşğuliyyət yoxlaması aparmadan, vaxtaşımı və növbə bağlantıları da daxil olmaqla bütün k_work_delayable strukturunu şərtsiz olaraq yenidən yazır. it82xx2_disable() funksiyası bu işi ləğv etmədiyi üçün, normal söndürmə-sonra-aktivləşdirmə dövrü api->enable()-ı təkrar işə salır (udc_enable() yalnız artıq olan aktivləşdirməni rədd edir, söndürmədən sonrakı yenidən aktivləşdirməni yox) və hələ də gözləməkdə olan işi yerində yenidən başladır, bu isə nüvənin vaxtaşımı/iş növbəsi bağlı siyahılarını korlayaraq nüvə panikasına (kernel panic) səbəb olur. Xarici USB host — məsələn, USB DFU ayırmanı (dfu-util --detach) həyata keçirən və ya təkrarlanan qoşulma/sıfırlama/yenidən sayma proseslərini məcburi edən host — udc_disable()/udc_enable() keçidlərini idarə edir və asılılıq/bərpa zamanlamasını tənzimləyir, beləliklə o, asılılıq işinin yenidən aktivləşdirmə zamanı gözləməkdə qalmasını təmin edə bilər. Bu, fiziki olaraq qoşulmuş çıxarıla bilən host vasitəsilə USB sərhədi üzərindən əlçatan olan autentifikasiyasız xidmətdən imtina (nüvə panikası) yaradır; konfidensiallığa və ya bütövlüyə heç bir təsir nümayiş etdirilməmişdir. Həll yolu k_work_init_delayable() çağırışını birdəfəlik preinit funksiyasına köçürür, beləliklə iş tam olaraq bir dəfə başladılır və istifadədə olan elementin yenidən başladılması aradan qaldırılır.
Necə düzəltmək olar
- zephyrproject zephyr4.4.2 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| zephyrproject zephyr | 3.7.0 ≤ v < 4.4.2 | 4.4.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.
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.