CVE-2026-16147

Orta

Açıklama

ITE IT82xx2 USB aygıt denetleyici sürücüsü (drivers/usb/udc/udc_it82xx2.c), kontrol dışı uç noktalardaki çok paketli OUT aktarımlarını hatalı yönetmektedir. work_handler_out() fonksiyonunda aktif aktarım tamponu, onu kuyruktan çıkarmayan udc_buf_peek() ile alınır; tam bir max-packet-size paketi geldiğinde ancak tamponda hala boş alan olduğunda (aktarım henüz tamamlanmadığında), ön ek kodu hem work_handler_xfer_continue() aracılığıyla aynı buf doldurulmaya devam etmesi için uç noktayı yeniden kurar hem de eş zamanlı olarak hala doldurulmakta olan aynı tamponu udc_submit_ep_event() ile üst yığına iletir. udc_submit_ep_event() tamponun sahipliğini USB aygıt yığınına devrettiği için (usbd_event_carrier(), &buf->node'u uds_ctx->ep_events'e ekler ve ardından sınıf işleyicisi bunu işleyip net_buf_unref() yapar), sürücü sonraki ana bilgisayar kontrollü OUT paketlerini, üst yığının zaten serbest bırakmış ve geri dönüştürmüş olabileceği bir tampona DMA ile yazmaya devam eder; bu durum bir serbest bırakıldıktan sonra kullanım (use-after-free) yazma hatasına yol açar. Ek olarak, tampon hiçbir zaman kuyruktan çıkarılmadığı için, tamamlanan paket aynı nesne üzerinde udc_buf_get() çalıştırır ve onu ikinci kez göndererek &buf->node'u olay slist'ine iki kez ekler (tek yönlü bağlı liste bozulması) ve çift net_buf_unref() işlemine neden olur. IT82xx2 bir USB çevre birimi denetleyicisidir, dolayısıyla güvenilmeyen USB ana bilgisayarı OUT-aktarım paketlemesini kontrol eder ve kuyruğa alınmış tamponu bir paketi aşan herhangi bir kontrol dışı OUT uç noktasına karşı bu yolu zorlayabilir; bu olağan bir toplu/kesme (bulk/interrupt) desenidir. Sürücü ve USB aygıt yığını, harici ana bilgisayarın üzerindeki çekirdek bağlamında çalıştığından, ana bilgisayara aygıt tarafında bir çekirdek yığın bozulma primi sağlar: güvenilir bir hizmet reddi ve yazılan baytlar saldırgan tarafından kontrol edildiğinden, komşu net_buf havuz belleğinin olası şekilde bozulması. Saldırı vektörü fizikseldir (USB bağlantısı). Düzeltme, gönderimi tampon tamamen dolana kadar erteler ve devamlılığı xfer_work_handler()'ın yürütmesine izin verir, böylece her OUT tamponu üst yığına tam olarak bir kez gönderilir.

ÖnemOrta
CVSS6.8
İstismar olasılığı—
ÜrünZephyr
Yayın14 Eyl 2026
İlk görülme14 Eyl 2026

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 zephyr4.0.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-16147 · Zephyr · Dark Radar