CVE-2026-72335
Açıklama
Linux çekirdeğinde aşağıdaki güvenlik açığı giderilmiştir: Bluetooth: MGMT: adv monitor ekleme hatası temizliğini düzelt hci_add_adv_monitor(), yeni bir adv_monitor'ü güç verilmiş MSFT kurulum adımından önce hdev->adv_monitors_idr içinde yayımlar. MSFT offload ekleme yolu daha sonra ya denetleyici ekleme komutu tamamlanmadan önce yerel olarak ya da MSFT ekleme geri çağrısında başarısız olabilir. Mevcut kuyruklanmış yönetim ekleme akışında, hci_cmd_sync_work() msft_add_monitor_pattern() döndükten sonra hâlâ özgün bekleyen komutla mgmt_add_adv_patterns_monitor_complete() işlevini çağırır. Hatalı senaryo iki yol içerir ve her sütun o yol içindeki sırayı gösterir: MSFT ekleme işleme MGMT tamamlama 1. monitor'ü ekle ve işle 1. eşitleme hatasını al 2. MSFT ekleme komutunu gönder 2. add-monitor tamamlamasını çağır 3. geri çağrı kötü yanıt görür 3. cmd->user_data yükle 4. geri çağrı monitor'ü serbest bırakır 4. monitor->handle oku Yerel MSFT kurulum hataları aynı sahiplik hatasının diğer yarısına sahiptir: IDR eklemesinden sonra bir hata döndürürler, ancak sonraki hiçbir kod başarısız monitor'ü IDR'den kaldırmaz. Sahiplik, tamamlanana kadar bekleyen yönetim komutunda kalsın. Normal yönetim eklemeleri için MSFT ekleme geri çağrısı artık başarılı denetleyici durumunu kaydeder ve hataları çağırana döndürür. Yönetim tamamlaması, yanıt tanıtıcısını kopyaladıktan sonra başarısızlık durumunda monitor'ü serbest bırakır; resume/reregister geri çağrı hatası temizliği ise MSFT geri çağrısında kalır. Başarı yolu mevcut kayıt tutmayı korur. Doğrulama bu çekirdek raporunu yeniden üretti: BUG: KASAN: slab-use-after-free in mgmt_add_adv_patterns_monitor_complete+0xfb/0x260 [bluetooth] Call Trace: <TASK> dump_stack_lvl+0x66/0xa0 print_report+0xce/0x5f0 ? mgmt_add_adv_patterns_monitor_complete+0xfb/0x260 [bluetooth] ? srso_alias_return_thunk+0x5/0xfbef5 ? __virt_addr_valid+0x19f/0x330 ? mgmt_add_adv_patterns_monitor_complete+0xfb/0x260 [bluetooth] kasan_report+0xe0/0x110 ? mgmt_add_adv_patterns_monitor_complete+0xfb/0x260 [bluetooth] mgmt_add_adv_patterns_monitor_complete+0xfb/0x260 [bluetooth] ? srso_alias_return_thunk+0x5/0xfbef5 ? 0xffffffffc00d00da ? __pfx_mgmt_add_adv_patterns_monitor_complete+0x10/0x10 [bluetooth] ? __pfx_mgmt_add_adv_patterns_monitor_complete+0x10/0x10 [bluetooth] ? hci_cmd_sync_work+0x1ab/0x210 [bluetooth] hci_cmd_sync_work+0x1c0/0x210 [bluetooth] ? __pfx_mgmt_add_adv_patterns_monitor_complete+0x10/0x10 [bluetooth] process_one_work+0x4fd/0xbc0 ? __pfx_process_one_work+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? __list_add_valid_or_report+0x37/0xf0 ? __pfx_hci_cmd_sync_work+0x10/0x10 [bluetooth] ? srso_alias_return_thunk+0x5/0xfbef5 worker_thread+0x2d8/0x570 ? __pfx_worker_thread+0x10/0x10 kthread+0x1ad/0x1f0 ? __pfx_kthread+0x10/0x10 ret_from_fork+0x3c9/0x540 ? __pfx_ret_from_fork+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? __switch_to+0x2e9/0x730 ? __pfx_kthread+0x10/0x10 ret_from_fork_asm+0x1a/0x30 </TASK> Allocated by task 471 on cpu 3 at 285.205389s: kasan_save_stack+0x33/0x60 kasan_save_track+0x17/0x60 __kasan_kmalloc+0xaa/0xb0 add_adv_patterns_monitor_rssi+0xd5/0x230 [bluetooth] hci_sock_sendmsg+0x96b/0xf80 [bluetooth] __sys_sendto+0x2bc/0x2d0 __x64_sys_sendto+0x76/0x90 do_syscall_64+0x115/0x6a0 entry_SYSCALL_64_after_hwframe+0x77/0x7f Freed by task 454 on cpu 2 at 285.217112s: kasan_save_stack+0x33/0x60 kasan_save_track+0x17/0x60 kasan_save_free_info+0x3b/0x60 __kasan_slab_free+0x5f/0x80 kfree+0x313/0x590 msft_add_monitor_sync+0x54a/0x570 [bluetooth] hci_add_adv_monitor+0x133/0x180 [bluetooth] hci_cmd_sync_work+0x187/0x210 [bluetooth] process_one_work+0x4fd/0xbc0 worker_thread+0x2d8/0x570 kthread+0x1ad/0x1f0 ret_from_fork+0x3c9/0x540 ret_from_fork_asm+0x1a/0x30
Nasıl düzeltilir
- Linux Linuxb1a719b3c4359ef731646fb7c7844e53dddbda72, 5aabbd01ac315a72bcdfd42985ede712c4744689, fb256d07395ebbc950f42e439d3896ec3a25c845, dfc8373893b1876bb367700eac9d776316dabd96, dbd935a9e056545721bc4e9ce518c775d787b21e, 384a4b2fef9ffe5e270ee5558975c0504881c5fb ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | a2a4dedf88ab2f807a7ca90947d686816b430f97 ≤ v < b1a719b3c4359ef731646fb7c7844e53dddbda72, a2a4dedf88ab2f807a7ca90947d686816b430f97 ≤ v < 5aabbd01ac315a72bcdfd42985ede712c4744689, a2a4dedf88ab2f807a7ca90947d686816b430f97 ≤ v < fb256d07395ebbc950f42e439d3896ec3a25c845, a2a4dedf88ab2f807a7ca90947d686816b430f97 ≤ v < dfc8373893b1876bb367700eac9d776316dabd96, a2a4dedf88ab2f807a7ca90947d686816b430f97 ≤ v < dbd935a9e056545721bc4e9ce518c775d787b21e, a2a4dedf88ab2f807a7ca90947d686816b430f97 ≤ v < 384a4b2fef9ffe5e270ee5558975c0504881c5fb, 5.12 | b1a719b3c4359ef731646fb7c7844e53dddbda72, 5aabbd01ac315a72bcdfd42985ede712c4744689, fb256d07395ebbc950f42e439d3896ec3a25c845, dfc8373893b1876bb367700eac9d776316dabd96, dbd935a9e056545721bc4e9ce518c775d787b21e, 384a4b2fef9ffe5e270ee5558975c0504881c5fb |
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.