CVE-2026-80659
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: mmc: vub300: sıfırlamanı cmd_mutex kilidi açılana qədər təxirə salın vub300_cmndwork_thread() funksiyası əmr göndərərkən və əmr cavabını gözləyərkən cmd_mutex kilidini saxlayır. Əgər cavab gözləmə müddəti başa çatarsa, __vub300_command_response() əmr URB-lərini ləğv edir və sonra usb_reset_device() vasitəsilə USB cihazını sinxron şəkildə sıfırlayır. Həmin sıfırlama yolu vub300_pre_reset() vasitəsilə drayverə yenidən daxil olur ki, bu funksiya da cmd_mutex kilidini götürür. Beləliklə, işçi (worker), əmr yolundan hələ də saxladığı eyni mutexi rekursiv olaraq əldə etməyə çalışır. Bu problem statik analiz alətimiz tərəfindən aşkar edilmiş və daha sonra cari ağaca qarşı əllə nəzərdən keçirilmişdir. Təsdiqlənmiş PoC real işçini və vaxtaşımı/sıfırlama daşıyıcısını saxlamışdır: vub300_cmndwork_thread() __vub300_command_response() usb_lock_device_for_reset() usb_reset_device() vub300_pre_reset() Lockdep cmd_mutex üzərində eyni tapşırıq tərəfindən rekursiv mənimsəməni hesabatlaşdırmışdır: WARNING: possible recursive locking detected ... (&test_vub300.cmd_mutex) ... at: usb_reset_device... [vuln_msv] ... (&test_vub300.cmd_mutex) ... at: vub300_cmndwork_thread+0x12/0x20 [vuln_msv] Workqueue: vub300_cmd_wq vub300_cmndwork_thread [vuln_msv] *** DEADLOCK *** Vaxtaşımı yolu cihazın sıfırlanmasını tələb etdikdə __vub300_command_response() funksiyasından bayraq (flag) qaytarın, daha sonra vub300_cmndwork_thread() icra edilməkdə olan əmr vəziyyətini təmizlədikdən və cmd_mutex kilidini buraxdıqdan sonra sıfırlamanı yerinə yetirin. Rekursiv kilidləmədən qaçmaqla yanaşı, mövcud sorğu tamamlanma ardıcıllığını qorumaq üçün sıfırlama hələ də mmc_request_done() funksiyasından əvvəl cəhd edilir.
Necə düzəltmək olar
- Linux Linux8672b8bdbd2063b3fcbd75f729e4706fcdad2257, 8344611477c9241f45f20981990780fc5f0996f8, 2e6b9a394206c76dd417c991312f349435ef35e6, 7ee7a77ec2f446109ab52cc80ace7acc22ab6211, 9f5e04235a0b59e6e30af9f45511addf2604d757, bf9848a22a8e50d39d5e8d871581f0a8110f16b3, c2e1d33929565fa14c48d8a5a45edc3ebfc941b2, ee5fb641c4ccac8406c668d3e947eb20ce44f233 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | 88095e7b473a3d9ec3b9c60429576e9cbd327c89 ≤ v < 8672b8bdbd2063b3fcbd75f729e4706fcdad2257, 88095e7b473a3d9ec3b9c60429576e9cbd327c89 ≤ v < 8344611477c9241f45f20981990780fc5f0996f8, 88095e7b473a3d9ec3b9c60429576e9cbd327c89 ≤ v < 2e6b9a394206c76dd417c991312f349435ef35e6, 88095e7b473a3d9ec3b9c60429576e9cbd327c89 ≤ v < 7ee7a77ec2f446109ab52cc80ace7acc22ab6211, 88095e7b473a3d9ec3b9c60429576e9cbd327c89 ≤ v < 9f5e04235a0b59e6e30af9f45511addf2604d757, 88095e7b473a3d9ec3b9c60429576e9cbd327c89 ≤ v < bf9848a22a8e50d39d5e8d871581f0a8110f16b3, 88095e7b473a3d9ec3b9c60429576e9cbd327c89 ≤ v < c2e1d33929565fa14c48d8a5a45edc3ebfc941b2, 88095e7b473a3d9ec3b9c60429576e9cbd327c89 ≤ v < ee5fb641c4ccac8406c668d3e947eb20ce44f233, 3.0 | 8672b8bdbd2063b3fcbd75f729e4706fcdad2257, 8344611477c9241f45f20981990780fc5f0996f8, 2e6b9a394206c76dd417c991312f349435ef35e6, 7ee7a77ec2f446109ab52cc80ace7acc22ab6211, 9f5e04235a0b59e6e30af9f45511addf2604d757, bf9848a22a8e50d39d5e8d871581f0a8110f16b3, c2e1d33929565fa14c48d8a5a45edc3ebfc941b2, ee5fb641c4ccac8406c668d3e947eb20ce44f233 |
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.