CVE-2022-49908
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: Bluetooth: L2CAP: vhci_write fonksiyonundaki bellek sızıntısı düzeltildi Syzkaller şu şekilde bir bellek sızıntısı raporlamaktadır: ==================================== BUG: memory leak unreferenced object 0xffff88810d81ac00 (size 240): [...] hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace: [<ffffffff838733d9>] __alloc_skb+0x1f9/0x270 net/core/skbuff.c:418 [<ffffffff833f742f>] alloc_skb include/linux/skbuff.h:1257 [inline] [<ffffffff833f742f>] bt_skb_alloc include/net/bluetooth/bluetooth.h:469 [inline] [<ffffffff833f742f>] vhci_get_user drivers/bluetooth/hci_vhci.c:391 [inline] [<ffffffff833f742f>] vhci_write+0x5f/0x230 drivers/bluetooth/hci_vhci.c:511 [<ffffffff815e398d>] call_write_iter include/linux/fs.h:2192 [inline] [<ffffffff815e398d>] new_sync_write fs/read_write.c:491 [inline] [<ffffffff815e398d>] vfs_write+0x42d/0x540 fs/read_write.c:578 [<ffffffff815e3cdd>] ksys_write+0x9d/0x160 fs/read_write.c:631 [<ffffffff845e0645>] do_syscall_x64 arch/x86/entry/common.c:50 [inline] [<ffffffff845e0645>] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 [<ffffffff84600087>] entry_SYSCALL_64_after_hwframe+0x63/0xcd ==================================== HCI çekirdeği, çerçeveyi işlemek için HCI sürücüsü tarafından hci_recv_frame() ile hdev->rx_q kuyruğuna eklenen hci_rx_work() fonksiyonunu kullanır. Ancak sorun şudur ki; HCI çekirdeği ACL veri paketlerini işledikten sonra skb'yi serbest bırakmayabilir. Daha spesifik olarak, başlangıç parçası L2CAP uzunluğunu içermediğinde, HCI çekirdeği skb'yi sadece conn->rx_skb içerisine kopyalar ve l2cap_recv_acldata() içinde skb'yi serbest bırakmadan çerçeve işlemini tamamlar; bu durum yukarıdaki bellek sızıntısını tetikler. Bu yama, l2cap_recv_acldata() içindeki söz konusu durumu işledikten sonra ilgili skb'nin serbest bırakılmasını sağlayarak sorunu çözer.
Nasıl düzeltilir
- linux linux_kernel5.15.78, 6.0.8 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| linux linux_kernel | 5.12 ≤ v < 5.15.78, 5.16 ≤ v < 6.0.8, 6.1 | 5.15.78, 6.0.8 |
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.