CVE-2026-14366
Açıklama
Silicon Labs SiWx917 WiFi sürücüsünün drivers/wifi/siwx91x/siwx91x_wifi.c dosyasındaki iletim geri çağırma fonksiyonu siwx91x_send(), sahibi olmadığı bir ağ paketini serbest bırakmaktadır. Zephyr TX yolunda net_pkt, L2/ağ yığınına aittir; sürücü bunu yalnızca çerçeve baytlarını yerel bir net_buf içine kopyalamak için ödünç alır. Düzeltmeden önce, iletimden sonra siwx91x_send(), çağırıcıya ait olan paket üzerinde ek olarak net_pkt_unref(pkt) işlemini gerçekleştirerek son referansını düşürmekte ve paketi erken bir şekilde paylaşılan paket havuzuna döndürmektedir. Bu kod yolu varsayılan olarak derlenmektedir (CONFIG_WIFI_SILABS_SIWX91X_NET_STACK_NATIVE). Çağırıcı olan subsys/net/l2/ethernet/ethernet.c içindeki ethernet_send(), sürücü döndükten sonra paketi kullanmaya devam eder: net_pkt_get_len(pkt) değerini okur, TX istatistiklerini günceller ve ardından kendi net_pkt_unref(pkt) işlemini gerçekleştirir. Sürücü paketi zaten serbest bıraktığı için bunlar, serbest bırakıldıktan sonra kullanım (use-after-free) okumalarıdır ve ardından ikinci bir unref (double free) işlemi gelir. Eşzamanlı ağ etkinliği iki unref arasında serbest bırakılan slab yuvasını geri dönüştürdüğünde, sondaki unref işlemi farklı ve aktif bir paketin referans sayısını azaltıp onu serbest bırakarak hem alma hem de iletim yolları tarafından paylaşılan net_pkt havuzunu bozar. Hata, yerel yığınlı SiWx917 WiFi arayüzü üzerinden yapılan sıradan iletimlerle tetiklenebilir ve aynı WiFi ağındaki yakın bir saldırgan, bu yolu çalıştırmak için iletimleri (örneğin ARP veya ICMP yankı yanıtları ya da TCP el sıkışmaları) tetikleyebilir. Temel gözlemlenebilir etki, erişilebilirlik kaybıdır (havuz bozulmasından kaynaklanan iletim donmaları ve çökmeler) ve çekişmeye bağlı olarak çekirdek ağ tampon havuzunun bellek bozulması meydana gelir. Düzeltme, siwx91x_send() içerisindeki hatalı net_pkt_unref(pkt) işlemini kaldırır; sürücünün kendisinin tahsis ettiği bir paketi doğru şekilde serbest bırakan alma yolu unref işlemi etkilenmemiştir.
Nasıl düzeltilir
- zephyrproject zephyr4.4.2 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| zephyrproject zephyr | 4.1.0 ≤ v < 4.4.2 | 4.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.
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.