CVE-2025-71181
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: rust_binder: rust_shrink_free_page() funksiyasındakı spin_lock() silinsin Rust Binder-i 6.18 versiyasına köçürərkən fb56fdf8b9a2 ("mm/list_lru: split the lock to per-cgroup scope") commit-i nəzərə almağı unutmuşam və görünür ki, drayveri təqdim etməzdən əvvəl yoxlayarkən shrinker callback-ini işə salmamışam. Bu, aşağıdakı kimi çökmələrə səbəb olur: ============================================ WARNING: possible recursive locking detected 6.18.0-mainline-maybe-dirty #1 Tainted: G IO -------------------------------------------- kswapd0/68 is trying to acquire lock: ffff956000fa18b0 (&l->lock){+.+.}-{2:2}, at: lock_list_lru_of_memcg+0x128/0x230 but task is already holding lock: ffff956000fa18b0 (&l->lock){+.+.}-{2:2}, at: rust_helper_spin_lock+0xd/0x20 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&l->lock); lock(&l->lock); *** DEADLOCK *** May be due to missing lock nesting notation 3 locks held by kswapd0/68: #0: ffffffff90d2e260 (fs_reclaim){+.+.}-{0:0}, at: kswapd+0x597/0x1160 #1: ffff956000fa18b0 (&l->lock){+.+.}-{2:2}, at: rust_helper_spin_lock+0xd/0x20 #2: ffffffff90cf3680 (rcu_read_lock){....}-{1:2}, at: lock_list_lru_of_memcg+0x2d/0x230 Bunu düzəltmək üçün rust_shrink_free_page() funksiyasından spin_lock() çağırışı silinmişdir.
Necə düzəltmək olar
- linux linux_kernel6.18.6 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| linux linux_kernel | 6.18.1 ≤ v < 6.18.6, 6.18, 6.19 | 6.18.6 |
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.