CVE-2026-97479
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: driver core: Bir aygıt kaldırılırken tedarikçisi (supplier) ayrılma (unbinding) sürecindeyse uyarının önlenmesi Sürücü kaldırma işlemi sırasında şu uyarı ortaya çıkabilir: WARNING: CPU: 1 PID: 139 at drivers/base/core.c:1497 __device_links_no_driver+0xcc/0xfc ... Call trace: __device_links_no_driver+0xcc/0xfc (P) device_links_driver_cleanup+0xa8/0xf0 device_release_driver_internal+0x208/0x23c device_links_unbind_consumers+0xe0/0x108 device_release_driver_internal+0xec/0x23c device_links_unbind_consumers+0xe0/0x108 device_release_driver_internal+0xec/0x23c device_links_unbind_consumers+0xe0/0x108 device_release_driver_internal+0xec/0x23c driver_detach+0xa0/0x12c bus_remove_driver+0x6c/0xbc driver_unregister+0x30/0x60 pci_unregister_driver+0x20/0x9c lan966x_pci_driver_exit+0x18/0xa90 [lan966x_pci] Bu uyarı, bir tüketici (consumer) kaldırıldığında, onun tedarikçisinin bağlantı durumu DL_DEV_DRIVER_BOUND değilse ve DL_FLAG_SYNC_STATE_ONLY bağlantı bayrağı ayarlanmamışsa tetiklenir. Kullanılan tüketici/tedarikçi topolojisi şöyledir (tüketici ---> tedarikçi): i2c -----------> OIC ----> PCI device | ^ | | +---> pinctrl ---+ PCI device kaldırıldığında, OIC (kesme denetleyicisi) kaldırılmalıdır. OIC'yi kaldırmak için pinctrl ve i2c'nin kaldırılması gerekir; pinctrl'yi kaldırmak için ise i2c'nin kaldırılması gerekir. Kaldırma sırası şöyledir: 1) i2c 2) pinctrl 3) OIC 4) PCI device Detaylı olarak kaldırma dizisi şöyledir (0000:01:00.0 PCI device olmak üzere): driver_detach: device_release_driver_internal(0000:01:00.0) çağrılır... device_links_busy(0000:01:00.0): links->status = DL_DEV_UNBINDING device_links_unbind_consumers(0000:01:00.0): 0000:01:00.0--oic link->status = DL_STATE_SUPPLIER_UNBIND device_release_driver_internal(oic) çağrılır... device_links_busy(oic): links->status = DL_DEV_UNBINDING device_links_unbind_consumers(oic): oic--pinctrl link->status = DL_STATE_SUPPLIER_UNBIND device_release_driver_internal(pinctrl) çağrılır... device_links_busy(pinctrl): links->status = DL_DEV_UNBINDING device_links_unbind_consumers(pinctrl): pinctrl--i2c link->status = DL_STATE_SUPPLIER_UNBIND device_release_driver_internal(i2c) çağrılır... device_links_busy(i2c): links->status = DL_DEV_UNBINDING __device_links_no_driver(i2c)... pinctrl--i2c link->status değeri DL_STATE_SUPPLIER_UNBIND oic--i2c link->status değeri DL_STATE_ACTIVE oic--i2c link->supplier->links.status değeri DL_DEV_UNBINDING Uyarı, OIC (tedarikçi) bağlantı durumu DL_DEV_DRIVER_BOUND olmadığı için i2c kaldırma işlemi tarafından tetiklenir. Bağlantı durumu aslında DL_DEV_UNBINDING olarak ayarlanmıştır. Bu durumda bağlantı durumunun DL_DEV_UNBINDING olarak ayarlanmış olması tamamen yasaldır. Nitekim, tüketici ayırmayı tetikleyen OIC ayırma işlemini başlatmıştık ve i2c ayrıldığında bu işlem henüz tamamlanmamıştı. Tedarikçi bağlantı durumu DL_DEV_UNBINDING olarak ayarlandığında uyarının önüne geçilerek, bu kaldırma dizisinin herhangi bir uyarı olmadan desteklenmesi sağlanmıştır.
Nasıl düzeltilir
Kaynaklarda bu zafiyet için düzeltilmiş sürüm ya da yama bağlantısı yok.
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| microsoft azl3_kernel_6.6.157.1-1 | Aralık belirtilmemiş | — |
| microsoft azl3_kernel_6.6.159.1-1 | Aralık belirtilmemiş | — |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.