CVE-2025-39996

Belirsiz

Açıklama

Linux çekirdeğinde aşağıdaki güvenlik açığı giderilmiştir: media: b2c2: flexcop_pci_remove içindeki irq_check_work kaynaklı serbest bırakıldıktan sonra kullanım sorununu düzelt Özgün kod, flexcop_pci_remove() içinde cancel_delayed_work() kullanır; bu, gecikmeli iş öğesi irq_check_work zaten çalışıyorsa tamamen tamamlandığını garanti etmez. Bu durum, flexcop_pci_remove() irq_check_work hâlâ etkinken flexcop_device'ı serbest bırakabileceği ve cihaza başvurmaya çalışabileceği serbest bırakıldıktan sonra kullanım senaryolarına yol açar. Tipik bir yarış durumu aşağıda gösterilmiştir: CPU 0 (kaldırma) | CPU 1 (gecikmeli iş geri çağırma) flexcop_pci_remove() | flexcop_pci_irq_check_work() cancel_delayed_work() | flexcop_device_kfree(fc_pci->fc_dev) | | fc = fc_pci->fc_dev; // UAF Bu, bir KASAN raporuyla doğrulanmıştır: ================================================================== BUG: KASAN: slab-use-after-free in __run_timer_base.part.0+0x7d7/0x8c0 Write of size 8 at addr ffff8880093aa8c8 by task bash/135 ... Call Trace: <IRQ> dump_stack_lvl+0x55/0x70 print_report+0xcf/0x610 ? __run_timer_base.part.0+0x7d7/0x8c0 kasan_report+0xb8/0xf0 ? __run_timer_base.part.0+0x7d7/0x8c0 __run_timer_base.part.0+0x7d7/0x8c0 ? __pfx___run_timer_base.part.0+0x10/0x10 ? __pfx_read_tsc+0x10/0x10 ? ktime_get+0x60/0x140 ? lapic_next_event+0x11/0x20 ? clockevents_program_event+0x1d4/0x2a0 run_timer_softirq+0xd1/0x190 handle_softirqs+0x16a/0x550 irq_exit_rcu+0xaf/0xe0 sysvec_apic_timer_interrupt+0x70/0x80 </IRQ> ... Allocated by task 1: kasan_save_stack+0x24/0x50 kasan_save_track+0x14/0x30 __kasan_kmalloc+0x7f/0x90 __kmalloc_noprof+0x1be/0x460 flexcop_device_kmalloc+0x54/0xe0 flexcop_pci_probe+0x1f/0x9d0 local_pci_probe+0xdc/0x190 pci_device_probe+0x2fe/0x470 really_probe+0x1ca/0x5c0 __driver_probe_device+0x248/0x310 driver_probe_device+0x44/0x120 __driver_attach+0xd2/0x310 bus_for_each_dev+0xed/0x170 bus_add_driver+0x208/0x500 driver_register+0x132/0x460 do_one_initcall+0x89/0x300 kernel_init_freeable+0x40d/0x720 kernel_init+0x1a/0x150 ret_from_fork+0x10c/0x1a0 ret_from_fork_asm+0x1a/0x30 Freed by task 135: kasan_save_stack+0x24/0x50 kasan_save_track+0x14/0x30 kasan_save_free_info+0x3a/0x60 __kasan_slab_free+0x3f/0x50 kfree+0x137/0x370 flexcop_device_kfree+0x32/0x50 pci_device_remove+0xa6/0x1d0 device_release_driver_internal+0xf8/0x210 pci_stop_bus_device+0x105/0x150 pci_stop_and_remove_bus_device_locked+0x15/0x30 remove_store+0xcc/0xe0 kernfs_fop_write_iter+0x2c3/0x440 vfs_write+0x871/0xd70 ksys_write+0xee/0x1c0 do_syscall_64+0xac/0x280 entry_SYSCALL_64_after_hwframe+0x77/0x7f ... Gecikmeli iş öğesinin düzgün şekilde iptal edildiğinden ve cihaz belleği serbest bırakılmadan önce yürütülmekte olan gecikmeli işin tamamlandığından emin olmak için cancel_delayed_work() yerine cancel_delayed_work_sync() kullanın. Bu hata başlangıçta statik analiz yoluyla tespit edilmiştir. Hatayı yeniden üretmek ve test etmek için B2C2 FlexCop PCI cihazını QEMU'da simüle ettim ve hatanın tetiklenme olasılığını artırmak için flexcop_pci_irq_check_work() işlevi içinde yapay gecikmeler ekledim.

ÖnemBelirsiz
CVSS—
İstismar olasılığı—
ÜrünLinux
Yayın15 Eki 2025
İlk görülme15 Eki 2025

Nasıl düzeltilir

Güncelleyin
  • Linux Linux607010d07b8a509b01ed15ea12744acac6536a98, bde8173def374230226e8554efb51b271f4066ec, 120e221b4bbe9d0f6c09b5c4dc53ca4ad91d956b, d502df8a716d993fa0f9d8c00684f1190750e28e, bb10a9ddc8d6c5dbf098f21eb1055a652652e524, 514a519baa9e2be7ddc2714bd730bc5a883e1244, 3ffabc79388e68877d9c02f724a0b7a38d519daf, 6a92f5796880f5aa345f0fed53ef511e3fd6f706, 01e03fb7db419d39e18d6090d4873c1bff103914 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
Linux Linux382c5546d618f24dc7d6ae7ca33412083720efbf ≤ v < 607010d07b8a509b01ed15ea12744acac6536a98, 382c5546d618f24dc7d6ae7ca33412083720efbf ≤ v < bde8173def374230226e8554efb51b271f4066ec, 382c5546d618f24dc7d6ae7ca33412083720efbf ≤ v < 120e221b4bbe9d0f6c09b5c4dc53ca4ad91d956b, 382c5546d618f24dc7d6ae7ca33412083720efbf ≤ v < d502df8a716d993fa0f9d8c00684f1190750e28e, 382c5546d618f24dc7d6ae7ca33412083720efbf ≤ v < bb10a9ddc8d6c5dbf098f21eb1055a652652e524, 382c5546d618f24dc7d6ae7ca33412083720efbf ≤ v < 514a519baa9e2be7ddc2714bd730bc5a883e1244, 382c5546d618f24dc7d6ae7ca33412083720efbf ≤ v < 3ffabc79388e68877d9c02f724a0b7a38d519daf, 382c5546d618f24dc7d6ae7ca33412083720efbf ≤ v < 6a92f5796880f5aa345f0fed53ef511e3fd6f706, 382c5546d618f24dc7d6ae7ca33412083720efbf ≤ v < 01e03fb7db419d39e18d6090d4873c1bff103914, 2.6.29607010d07b8a509b01ed15ea12744acac6536a98, bde8173def374230226e8554efb51b271f4066ec, 120e221b4bbe9d0f6c09b5c4dc53ca4ad91d956b, d502df8a716d993fa0f9d8c00684f1190750e28e, bb10a9ddc8d6c5dbf098f21eb1055a652652e524, 514a519baa9e2be7ddc2714bd730bc5a883e1244, 3ffabc79388e68877d9c02f724a0b7a38d519daf, 6a92f5796880f5aa345f0fed53ef511e3fd6f706, 01e03fb7db419d39e18d6090d4873c1bff103914

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.

Intelligence 360 paketinde

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.

CVE-2025-39996 · Linux · Dark Radar