CVE-2026-53161

Yüksek

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: misc: fastrpc: workqueue bağlamında fastrpc_user için serbest bırakıldıktan sonra kullanım (use-after-free) hatası düzeltildi fastrpc_device_release() ile DSP yanıtlarını işleyen workqueue arasında bir yarış durumu (race condition) bulunmaktadır. Kullanıcı dosya tanımlayıcıyı kapattığında, fastrpc_device_release() fastrpc_user yapısını serbest bırakır. Eş zamanlı olarak, devam eden bir DSP çağrısı tamamlanabilir ve fastrpc_rpmsg_callback(), schedule_work(&ctx->put_work) aracılığıyla bağlam temizliğini planlar. Eğer workqueue, fastrpc_device_release() kullanıcı yapısını serbest bıraktıktan sonra veya bununla paralel olarak fastrpc_context_free() fonksiyonunu çalıştırırsa, serbest bırakılmış olan fastrpc_user referansına erişmeye çalışır. Yarış durumundaki bağlamın durumuna bağlı olarak, aşağıdaki erişimlerden herhangi biri gerçekleşebilir: 1. fastrpc_buf_free(), fiziksel adresi dma_free_coherent() fonksiyonuna iletmeden önce saklanan IOVA'dan SID bitlerini ayıklamak için fastrpc_ipa_to_dma_addr(buf->fl->cctx, ...) fonksiyonunu çağırır. 2. fastrpc_free_map(), belleği DSP VM'den tekrar HLOS'a döndüren qcom_scm_assign_mem() çağrısı için gereken kaynak izin bit maskesini yeniden oluşturmak amacıyla map->fl->cctx->vmperms[0].vmid değerini okur. 3. fastrpc_free_map(), eşleme düğümünü fl->maps listesinden güvenli bir şekilde kaldırmak için map->fl->lock kilidini alır. Ortaya çıkan serbest bırakıldıktan sonra kullanım (use-after-free) durumu şu şekilde görülmektedir: pc : fastrpc_buf_free+0x38/0x80 [fastrpc] lr : fastrpc_context_free+0xa8/0x1b0 [fastrpc] fastrpc_context_free+0xa8/0x1b0 [fastrpc] fastrpc_context_put_wq+0x78/0xa0 [fastrpc] process_one_work+0x180/0x450 worker_thread+0x26c/0x388 fastrpc_user yapısına kref tabanlı referans sayacı eklendi. Her çağırma bağlamının tahsis anında kullanıcı üzerinde bir referans alması ve bağlam serbest bırakıldığında bu referansı bırakması sağlandı. Dosya kapatıldığında fastrpc_device_release() içerisindeki ilk referans serbest bırakılır. Kullanıcı yapısının yıkım işlemi —bekleyen bağlamların, eşlemelerin, mmaps'lerin ve kanal bağlam referansının serbest bırakılması— kref serbest bırakma geri çağırma fonksiyonu olan fastrpc_user_free() içerisine taşındı; böylece işlem, cihaz kapatıldığında veya son devam eden bağlam tamamlandığında fark etmeksizin, yalnızca son referans bırakıldığında çalışacaktır.

ÖnemYüksek
CVSS7.8
İstismar olasılığı—
ÜrünLinux Kernel
Yayın25 Haz 2026
İlk görülme25 Haz 2026

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel5.10.259, 5.15.210, 6.1.176, 6.6.143, 6.12.94, 6.18.36, 7.0.13 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel5.1 ≤ v < 5.10.259, 5.11 ≤ v < 5.15.210, 5.16 ≤ v < 6.1.176, 6.2 ≤ v < 6.6.143, 6.7 ≤ v < 6.12.94, 6.13 ≤ v < 6.18.36, 6.19 ≤ v < 7.0.13, 7.15.10.259, 5.15.210, 6.1.176, 6.6.143, 6.12.94, 6.18.36, 7.0.13

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