CVE-2025-39691

Yüksek

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: fs/buffer: bh_read() yardımcı fonksiyonu çağrıldığında oluşan serbest bırakıldıktan sonra kullanım (use-after-free) hatası düzeltildi Sorun şu şekildedir: BUG: KASAN: end_buffer_read_sync+0xe3/0x110 konumunda stack-out-of-bounds swapper/3/0 görevi tarafından ffffc9000168f7f8 adresinde 8 boyutunda okuma işlemi CPU: 3 UID: 0 PID: 0 Comm: swapper/3 Not tainted 6.16.0-862.14.0.6.x86_64 Donanım adı: QEMU Standard PC (i440FX + PIIX, 1996) Çağrı İzleme (Call Trace): <IRQ> dump_stack_lvl+0x55/0x70 print_address_description.constprop.0+0x2c/0x390 print_report+0xb4/0x270 kasan_report+0xb8/0xf0 end_buffer_read_sync+0xe3/0x110 end_bio_bh_io_sync+0x56/0x80 blk_update_request+0x30a/0x720 scsi_end_request+0x51/0x2b0 scsi_io_completion+0xe3/0x480 ? scsi_device_unbusy+0x11e/0x160 blk_complete_reqs+0x7b/0x90 handle_softirqs+0xef/0x370 irq_exit_rcu+0xa5/0xd0 sysvec_apic_timer_interrupt+0x6e/0x90 </IRQ> Yukarıdaki sorun ntfs3 dosya sistemi bağlama (mount) işlemi sırasında gerçekleşmektedir ve süreç şu şekilde ilerleyebilir: mount IRQ ntfs_fill_super read_cache_page do_read_cache_folio filemap_read_folio mpage_read_folio do_mpage_readpage ntfs_get_block_vbo bh_read submit_bh wait_on_buffer(bh); blk_complete_reqs scsi_io_completion scsi_end_request blk_update_request end_bio_bh_io_sync end_buffer_read_sync __end_buffer_read_notouch unlock_buffer wait_on_buffer(bh);--> dönüş çağıran fonksiyona dönecektir put_bh --> stack-out-of-bounds tetikler mpage_read_folio() fonksiyonunda, yığın değişkeni olan 'map_bh', ntfs_get_block_vbo()'ye aktarılır. unlock_buffer() kilidi açtığında ve wait_on_buffer() işleme devam etmek için döndüğünde, yığın değişkeninin geri alınmış olması muhtemeldir. Sonuç olarak, end_buffer_read_sync() işlemi sırasında put_bh() çağrılması yığın aşımıyla (stack overrun) sonuçlanabilir. Eğer bh yığından tahsis edilmemişse bir folio'ya aittir. Bir folio'ya ait olan bir tampon başlığının (buffer head) serbest bırakılması drop_buffers() ile yapılır; bu işlem hala kilitli olan tamponları serbest bırakmada başarısız olacaktır. Bu nedenle, __end_buffer_read_notouch() öncesinde put_bh() çağırmak güvenlidir.

ÖnemYüksek
CVSS7.8
İstismar olasılığı—
ÜrünLinux Kernel
Yayın5 Eyl 2025
İlk görülme5 Eyl 2025

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel5.4.297, 5.10.241, 5.15.190, 6.1.149, 6.6.103, 6.12.44, 6.16.4 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel2.6.13 ≤ v < 5.4.297, 5.5 ≤ v < 5.10.241, 5.11 ≤ v < 5.15.190, 5.16 ≤ v < 6.1.149, 6.2 ≤ v < 6.6.103, 6.7 ≤ v < 6.12.44, 6.13 ≤ v < 6.16.4, 2.6.12, 6.175.4.297, 5.10.241, 5.15.190, 6.1.149, 6.6.103, 6.12.44, 6.16.4
debian debian_linux11.0—

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-39691 · Linux Kernel · Dark Radar