CVE-2026-89901
Açıklama
Linux kernel'da aşağıdaki güvenlik açığı giderilmiştir: media: airspy: NULL deref hatasını düzeltmek için bağlantı kesildiğinde vb2_video_unregister_device() kullanın airspy_disconnect(), v4l2_lock altında s->udev değerini temizler ancak airspy_stop_streaming() sonrasında koşulsuz olarak airspy_ctrl_msg() ve airspy_free_stream_bufs() fonksiyonlarını çağırır. Eğer bir akış kullanıcısı bağlantı kesildikten sonra cihazı kapatırsa, stop_streaming() çalışır ve NULL olan s->udev referansını çözer: airspy_stop_streaming() airspy_ctrl_msg(s, CMD_RECEIVER_MODE, 0, 0, NULL, 0) usb_sndctrlpipe(s->udev, 0) /* NULL deref */ airspy_free_stream_bufs(s) usb_free_coherent(s->udev, ...) /* NULL deref */ airspy sürücüsü file_operations kısmında vb2_fop_release() kullandığından, video_unregister_device(&s->vdev) ifadesi vb2_video_unregister_device(&s->vdev) ile değiştirilmiş ve s->udev temizlenmeden öncesine taşınmıştır. vb2_video_unregister_device(), vb2 kuyruğunu serbest bırakır; bu da eğer akış aktifse airspy_stop_streaming() fonksiyonunu senkronize olarak çalıştırır, böylece URB'ler, tutarlı DMA akış tamponları ve donanım durdurma kontrol mesajının tamamı s->udev hala geçerliyken yürütülür. vb2_video_unregister_device() dahili olarak vdev->queue->lock (vb_queue_lock) kilidini kullanır ve stop_streaming() ise v4l2_lock kilidini kullanır; bu nedenle kayıt silme dizisi etrafındaki önceki dış mutex_lock(&s->vb_queue_lock) / mutex_lock(&s->v4l2_lock) çifti kendi kendini kilitlediği (self-deadlock) için kaldırılmıştır. Dosya tanımlayıcısını hala tutan herhangi bir ioctl yolunun tutarlı durumu görmesi için s->udev = NULL etrafında kısa bir v4l2_lock kritik bölümü kalmıştır. Sorun, https://sashiko.dev/ adresindeki INV-003 serisinin otomatik incelemesi tarafından tespit edilmiştir.
Nasıl düzeltilir
- Linux Linuxc9081e2655188d2d134a741aec837dc70439d505, 75089cea32e5055773bd13116236d08fdc98678a, 155d0378ae0d6305cc4840583a6b42d2d0595bff, 6e4ea90fdc6608cd5fac342e146ab6ae15d430bc, a9a8c37ddda9fa3687b142be9098e1c37b8faf35, 297fee023f46d771a844520675692ea089d80d9d, c6749ac8f59cc80eb1b2d52f167fdf13e12655cc, 2f378dc45e685fc825d2dd08e7864666d6fcc009 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | 634fe5033951b80ef4b98d8f047cb1083d29170d ≤ v < c9081e2655188d2d134a741aec837dc70439d505, 634fe5033951b80ef4b98d8f047cb1083d29170d ≤ v < 75089cea32e5055773bd13116236d08fdc98678a, 634fe5033951b80ef4b98d8f047cb1083d29170d ≤ v < 155d0378ae0d6305cc4840583a6b42d2d0595bff, 634fe5033951b80ef4b98d8f047cb1083d29170d ≤ v < 6e4ea90fdc6608cd5fac342e146ab6ae15d430bc, 634fe5033951b80ef4b98d8f047cb1083d29170d ≤ v < a9a8c37ddda9fa3687b142be9098e1c37b8faf35, 634fe5033951b80ef4b98d8f047cb1083d29170d ≤ v < 297fee023f46d771a844520675692ea089d80d9d, 634fe5033951b80ef4b98d8f047cb1083d29170d ≤ v < c6749ac8f59cc80eb1b2d52f167fdf13e12655cc, 634fe5033951b80ef4b98d8f047cb1083d29170d ≤ v < 2f378dc45e685fc825d2dd08e7864666d6fcc009, 3.17 | c9081e2655188d2d134a741aec837dc70439d505, 75089cea32e5055773bd13116236d08fdc98678a, 155d0378ae0d6305cc4840583a6b42d2d0595bff, 6e4ea90fdc6608cd5fac342e146ab6ae15d430bc, a9a8c37ddda9fa3687b142be9098e1c37b8faf35, 297fee023f46d771a844520675692ea089d80d9d, c6749ac8f59cc80eb1b2d52f167fdf13e12655cc, 2f378dc45e685fc825d2dd08e7864666d6fcc009 |
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.