CVE-2026-12363
Təsvir
LoRaWAN Fragmented Data Block Transport xidməti (subsys/lorawan/services/frag_transport.c) qəbul edilmiş DATA_FRAGMENT əmrindəki fragment sayğacını konfiqurasiya edilmiş dekoderə ötürməzdən əvvəl yoxlamır. frag_transport_package_callback() funksiyasında frag_counter = hdr->frag_index_n & 0x3FFF dəyəri birbaşa downlink yükündən götürülür və dekoderə ötürülür, dekoder isə frag_counter - 1 kimi massiv indeksi və flash ofseti çıxarır. DataFragment fragmentləri 1-dən indekslənir, buna görə frag_counter dəyərinin 0 olması bu arifmetikada aşağıya doğru daşmaya (underflow) səbəb olur. Standart Semtech/LoRaMAC-node dekoderi ilə bu, FragDecoderProcess() funksiyasında FragDecoder.FragNbMissingIndex[fragCounter - 1] = 0 yazısına gətirib çıxarır, burada fragCounter - 1 -1 qiyməti alır və uint16_t sıfır dəyəri massivin hüdudlarından kənara, massivin bilavasitə qabağına və statik dekoder obyektinin bitişik MatrixM2B bərpa matrisi vəziyyətinə yazılır (CWE-787). Əlaqəli yazı həmçinin qeyri-müəyyən flash ofseti yaradır, lakin bu yol flash_area_write() sərhəd yoxlaması tərəfindən rədd edilir. Layihə daxilindəki aşağı yaddaşlı dekoder (frag_dec()) zədələnmir: onun diapazondan kənar bit-massiv və flash müraciətləri sys_bitarray_ və flash_area_ sərhəd yoxlamaları tərəfindən tutulur. Bu handler fragmentasiya transport portu üçün qeydiyyatdan keçmiş downlink callback funksiyasıdır və aktiv fragmentasiya sessiyası mövcud olduqda əlçatandır, buna görə tetikləyici bayt hücumçunun təsir edə biləcəyi LoRaWAN/FUOTA şəbəkə girişidir. Onun tetiklənməsi autentifikasiya edilmiş downlinkləri (LoRaWAN MAC sessiya açarları və ya zərərli/kompromisə uğramış şəbəkə və ya FUOTA serveri) və aktiv fragmentasiya sessiyasını tələb edir. Təsir məhduddur: nəzarət edilə bilən yaddaş korrupsiyası və ya kodun icrası əvəzinə dekoder vəziyyətinin korrupsiyası və firmware yeniləmə (FUOTA) sessiyasından imtina. Düzəliş frag_counter == 0 dəyərini rədd edən transport qatı yoxlaması əlavə edir və hər iki dekoder backendı üçün qüsuru bağlayır.
Necə düzəltmək olar
- zephyrproject zephyr4.5.0 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| zephyrproject zephyr | 3.7.0 ≤ v < 4.5.0 | 4.5.0 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.