CVE-2025-38682
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: i2c: core: i2c_unregister_device() funksiyasında fwnode-un iki dəfə azad edilməsi (double-free) xətası düzəldildi df6d7277e552 ("i2c: core: Do not dereference fwnode in struct device") commit-indən əvvəl, i2c_unregister_device() yalnız of_node_put(client->dev.of_node) çağırışı vasitəsilə of_node-lar üzərində fwnode_handle_put() funksiyasını çağırdı. Lakin bu commit-dən sonra i2c_client-in fwnode-u artıq şərtsiz olaraq fwnode_handle_put() prosesindən keçir. i2c_client-in əsas (ACPI / OF) fwnode-u olmadıqda, lakin proqram təminatı fwnode-u (software fwnode) olduqda, software-node əsas nod kimi çıxış edir və fwnode_handle_put() onu put() edir. Lakin software fwnode üçün device_remove_software_node() funksiyası da onu put() edir ki, bu da iki dəfə azad etməyə (double free) səbəb olur: [ 82.665598] ------------[ cut here ]------------ [ 82.665609] refcount_t: underflow; use-after-free. [ 82.665808] WARNING: CPU: 3 PID: 1502 at lib/refcount.c:28 refcount_warn_saturate+0xba/0x11 ... [ 82.666830] RIP: 0010:refcount_warn_saturate+0xba/0x110 ... [ 82.666962] <TASK> [ 82.666971] i2c_unregister_device+0x60/0x90 Əsas fwnode software-node olduqda fwnode_handle_put() funksiyasının çağırılmaması ilə bu problem həll edilmişdir.
Necə düzəltmək olar
- linux linux_kernel6.16.2 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.16 ≤ v < 6.16.2 | 6.16.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.