CVE-2026-80971

Yüksek

Açıklama

Linux kernel'de aşağıdaki güvenlik açığı giderilmiştir: ALSA: bcd2000: bağlantı kesildiğinde URB işaretçilerini temizle bcd2000_free_usb_related_resources() her iki URB'yi de serbest bırakır ancak işaretçileri geride bırakır: usb_kill_urb(bcd2k->midi_out_urb); usb_kill_urb(bcd2k->midi_in_urb); usb_free_urb(bcd2k->midi_out_urb); usb_free_urb(bcd2k->midi_in_urb); rawmidi aygıtı bu çağrıdan daha uzun süre yaşar. Aygıt çıkarıldığında hala açık olan bir alt akış, kapatma sırasındaki tetikleyici yol üzerinden bcd2000_midi_send() fonksiyonuna ulaşır. Bu fonksiyon, serbest bırakılmış URB'ye yazar ve ardından onu USB çekirdeğine iletir: bcd2k->midi_out_urb->transfer_buffer_length = BUFSIZE; ... ret = usb_submit_urb(bcd2k->midi_out_urb, GFP_ATOMIC); usb_kill_urb() daha sonraki bir gönderimi de durdurmaz, bu nedenle bağlantı kesilmesiyle yarışan bir gönderim, URB toplandıktan sonra onu yeniden kuyruğa alabilir. midi_in_urb de aynı şekilde etkilenir: bcd2000_input_complete() bunu tamamlama yöneticisinden yeniden gönderir. 7.2.0-rc5 (arm64) üzerinde KASAN: BUG: KASAN: slab-use-after-free in bcd2000_midi_send [snd_bcd2000] Write of size 4 at addr ffff00001827d388 by task bpoc/168 __asan_store4 bcd2000_midi_send [snd_bcd2000] bcd2000_midi_output_trigger [snd_bcd2000] snd_rawmidi_kernel_write1 close_substream.part.0 Freed by task 168: usb_free_urb bcd2000_disconnect [snd_bcd2000] BUG: KASAN: slab-use-after-free in usb_submit_urb Read of size 8 at addr ffff00001827d3b8 by task bpoc/168 Serbest bıraktıktan sonra her iki işaretçiyi de temizleyin ve hala çalışabilen yollarda bunları test edin. Serbest bırakmadan önce URB'leri poison işlemine tabi tutun: usb_poison_urb() çalışan bir tamamlama yöneticisini bekler ve sonraki tüm gönderimleri reddeder; böylece döndükten sonra giriş yolu sakinleşmiş olur ve yalnızca rawmidi tetikleyici yolu bcd2000_midi_send() fonksiyonuna ulaşabilir. Unpoison işlemine gerek yoktur; URB'ler bir sonraki satırda serbest bırakılır. XBOW tarafından keşfedilmiş, Baul Lee <[email protected]> tarafından analiz edilmiştir.

ÖnemYüksek
CVSS7.8
İstismar olasılığı—
ÜrünLinux
Yayın11 Eyl 2026
İlk görülme11 Eyl 2026

Nasıl düzeltilir

Güncelleyin
  • Linux Linux9af08677aa57debaca5b57c8045c52a83d3dd376, 5a77febac6faf6da40fbb4555f703eeb91b58130, 3c00004f134fc819f9d9e202c6a64acde0a1f8d0, 6c07aad8a7c9ef8ebc4d03a964b882123a349a2e, eb482a06791d6168beb8c78cc904ac5a5ed96a55, 7df3194bdb7479cad9199889655a566a2c0c1d1b, b06ebc7fe25a6af4a9f6e4a3d4236a4178ad4b01, 459d3a64766f5ca2f1886daeaf24582831a5f5ab ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
Linux Linuxb47a22290d581277be70e8a597824a4985d39e83 ≤ v < 9af08677aa57debaca5b57c8045c52a83d3dd376, b47a22290d581277be70e8a597824a4985d39e83 ≤ v < 5a77febac6faf6da40fbb4555f703eeb91b58130, b47a22290d581277be70e8a597824a4985d39e83 ≤ v < 3c00004f134fc819f9d9e202c6a64acde0a1f8d0, b47a22290d581277be70e8a597824a4985d39e83 ≤ v < 6c07aad8a7c9ef8ebc4d03a964b882123a349a2e, b47a22290d581277be70e8a597824a4985d39e83 ≤ v < eb482a06791d6168beb8c78cc904ac5a5ed96a55, b47a22290d581277be70e8a597824a4985d39e83 ≤ v < 7df3194bdb7479cad9199889655a566a2c0c1d1b, b47a22290d581277be70e8a597824a4985d39e83 ≤ v < b06ebc7fe25a6af4a9f6e4a3d4236a4178ad4b01, b47a22290d581277be70e8a597824a4985d39e83 ≤ v < 459d3a64766f5ca2f1886daeaf24582831a5f5ab, 3.169af08677aa57debaca5b57c8045c52a83d3dd376, 5a77febac6faf6da40fbb4555f703eeb91b58130, 3c00004f134fc819f9d9e202c6a64acde0a1f8d0, 6c07aad8a7c9ef8ebc4d03a964b882123a349a2e, eb482a06791d6168beb8c78cc904ac5a5ed96a55, 7df3194bdb7479cad9199889655a566a2c0c1d1b, b06ebc7fe25a6af4a9f6e4a3d4236a4178ad4b01, 459d3a64766f5ca2f1886daeaf24582831a5f5ab

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.