CVE-2026-12363
Açıklama
LoRaWAN Fragmented Data Block Transport hizmeti (subsys/lorawan/services/frag_transport.c), alınan bir DATA_FRAGMENT komutundaki parça sayacını yapılandırılmış kod çözücüye iletmeden önce doğrulamaz. frag_transport_package_callback() içinde frag_counter = hdr->frag_index_n & 0x3FFF değeri doğrudan aşağı yönlü yükten alınır ve kod çözücüye iletilir; kod çözücü bundan frag_counter - 1 olarak bir dizi indeksi ve flash ofseti türetir. DataFragment parçaları 1 tabanlı indekslendiğinden, frag_counter değerinin 0 olması bu aritmetikte alt taşmaya (underflow) yol açar. Varsayılan Semtech/LoRaMAC-node kod çözücüsüyle bu durum FragDecoderProcess() içinde FragDecoder.FragNbMissingIndex[fragCounter - 1] = 0; ifadesine ulaşır; burada fragCounter - 1 değeri -1 olarak değerlendirilir ve dizi sınırlarının dışına, dizinin hemen öncesine ve statik kod çözücü nesnesinin bitişik MatrixM2B kurtarma matrisi durumuna bir uint16_t sıfır yazar (CWE-787). Eşlik eden bir yazma işlemi de geçersiz bir flash ofseti türetir, ancak bu yol flash_area_write() sınır denetimi tarafından reddedilir. Ağaç içindeki düşük bellekli kod çözücü (frag_dec()) bozulmaz: aralık dışı bit dizisi ve flash erişimleri sys_bitarray_ ve flash_area_ sınır denetimleri tarafından yakalanır. İşleyici, parçalama taşıma bağlantı noktası için kayıtlı aşağı yönlü geri çağırma işlevidir ve etkin bir parçalama oturumu mevcut olduğunda her zaman erişilebilir; bu nedenle tetikleyici bayt, saldırganın etkileyebileceği LoRaWAN/FUOTA ağ girdisidir. Tetiklenmesi, kimliği doğrulanmış aşağı yönlü bağlantılar (LoRaWAN MAC oturum anahtarları veya kötü niyetli/ele geçirilmiş bir ağ ya da FUOTA sunucusu) ve etkin bir parçalama oturumu gerektirir. Etki sınırlıdır: kontrol edilebilir bellek bozulması veya kod çalıştırma yerine kod çözücü durumunun bozulması ve ürün yazılımı güncelleme (FUOTA) oturumunun hizmet reddi söz konusudur. Düzeltme, frag_counter == 0 değerini reddeden bir taşıma katmanı denetimi ekleyerek kusuru her iki kod çözücü arka ucu için de kapatır.
Nasıl düzeltilir
- zephyrproject zephyr4.5.0 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| zephyrproject zephyr | 3.7.0 ≤ v < 4.5.0 | 4.5.0 |
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.