CVE-2026-14367

Düşük

Açıklama

drivers/i3c/i3c_ibi_workq.c dosyasındaki I3C IBI alt sistemi, herhangi bir senkronizasyon sağlamayan düz bir sys_slist_t olarak uygulanan i3c_ibi_work_nodes_free serbest listesi üzerinden statik olarak tahsis edilmiş çalışma düğümleri dağıtmaktadır. Tahsis yardımcıları (i3c_ibi_work_enqueue, i3c_ibi_work_enqueue_target_irq, i3c_ibi_work_enqueue_hotjoin, i3c_ibi_work_enqueue_controller_request, i3c_ibi_work_enqueue_cb), ISR bağlamından doğrudan sys_slist_get() fonksiyonunu çağırırken, iş kuyruğu yöneticisi i3c_ibi_work_handler() ise her iki tarafta da herhangi bir kilit olmaksızın iş kuyruğu iş parçacığından sys_slist_append() ile düğümleri geri döndürmektedir. sys_slist_get() ve sys_slist_append() fonksiyonları ne atomik ne de kesme güvenli olduğundan, iş kuyruğu iş parçacığı ekleme işleminin ortasındayken tetiklenen bir IBI kesmesi (veya CONFIG_SMP altında gerçek anlamda paralel bir erişim), paylaşılan liste üzerinde yarış durumuna (race condition) neden olur. Bu durum liste bağlantılarını bozar: bir düğüm iki tüketiciye verilebilir, bir düğüm kaybolabilir veya baş/son işaretçileri tutarsız kalabilir, böylece sys_slist_get() güncelliğini yitirmiş veya hatalı bir işaretçi döndürür. Çift dağıtım durumunda, ardından gelen memcpy(ibi_node, ibi_work, sizeof(*ibi_node)) işlemi hala işlemde olan bir düğümün üzerine yazar; hatalı bir işaretçi ise aynı memcpy işlemini sınır dışı yazmaya dönüştürür. Yarış durumu I3C veri yolu trafiği tarafından tetiklenir; IBI'lar, sıcak katılımlar (hot-joins) ve denetleyici rolü istekleri veri yolundaki hedef cihazlardan kaynaklanır ve I3C sıcak katılım yapan cihazları destekler. Kartın çip-ten-çipe veri yolundaki bir I3C çevre birimini kontrol eden bir saldırgan, serbest bırakma işlemiyle çakışacak şekilde zamanlanmış yüksek frekanslı kesmeler oluşturabilir. İstismar edilmesi için veri yoluna fiziksel erişim ve dar bir zamanlama penceresinin yakalanması gerekir; en gerçekçi etki sistemin çökmesi veya donmasıdır (hizmet reddi); bellek bozulması mümkündür ancak kontrol edilmesi zordur. Düzeltme, tüm serbest liste sys_slist_get()/sys_slist_append() işlemlerini, her biri bir k_spinlock (ibi_work_lock) ile korunan yeni ibi_work_alloc()/ibi_work_free() yardımcılarının içine alarak ISR ve iş parçacığı bağlamları arasındaki yarış durumunu kapatmaktadır.

ÖnemDüşük
CVSS3.1
İstismar olasılığı—
ÜrünZephyr
Yayın31 Ağu 2026
İlk görülme31 Ağu 2026
Zayıflık türüCWE-362Yarış durumu

Nasıl düzeltilir

Güncelleyin
  • zephyrproject zephyr4.4.2 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
zephyrproject zephyr3.2.0 ≤ v < 4.4.24.4.2

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-14367 · Zephyr · Dark Radar