CVE-2026-19739
Təsvir
subsys/bluetooth/controller/ll_sw/ull_llcp_conn_upd.c faylındakı Bluetooth Link Layer idarəetmə proseduru kodu, Connection Update / Connection Parameter proseduru öz anını gözləyərkən qəbul edilmiş RX düyününü saxlayır ki, bu düyün daha sonra host bildirişini daşıya bilsin (llcp_rx_node_retain() funksiyası onu NODE_RX_TYPE_RETAIN olaraq işarələyir və bununla da ull.c faylındakı normal təkrar istifadəni ləğv edir). llcp_rp_cu_rx() və llcp_lp_cu_rx() funksiyalarının standart: kolu — "yanlış PDU, bağlantını kəs" yolu — həmin saxlanılan düyünü azad etmədən proseduru tamamlayırdı. Daha sonra llcp_rr_check_done() funksiyası ctx->node_ref.rx hələ də saxlanılan düyünə işarə edərkən prosedur kontekstini növbədən çıxarıb azad etdi və beləliklə ona olan sonuncu istinad itdi. Radio diapazonundakı qarşı cihaz buna cütləşmə, bağlanma və ya şifrələmə olmadan çata bilər. Periferik cihaza qarşı, qarşı tərəf gələcəkdəki bir neçə bağlantı hadisəsində anı olan düzgün formalaşdırılmış LL_CONNECTION_UPDATE_IND göndərir (düyün saxlanılır və prosedur RP_CU_STATE_WAIT_INSTANT vəziyyətinə keçir), sonra həmin ana çatmamış LL_LENGTH_REQ kimi hər hansı digər LL Control PDU göndərir. ull_cp_rx() həmin PDU-nu aktiv uzaq Connection Update proseduruna yönləndirir və o da yanlış-PDU yolunu seçir. Mərkəzi rol, LL_CONNECTION_PARAM_REQ qəbul edildikdən sonra simmetrik olaraq əlçatandır və lokal-prosedur variantına LL_REJECT_IND ilə çatmaq mümkündür. CONFIG_BT_CTLR_ASSERT_DEBUG aktiv olduqda (standart halda), nəticədə yaranan vəziyyət llcp_rr_check_done() funksiyasında təsdiqlənmiş dəyişməzliyi pozur, buna görə də iki-PDU ardıcıllığı kontrollerdə dərhal kritik xətaya səbəb olur. Həmin assert-lər deaktiv edildikdə, hər bir hadisə kontrollerin kiçik sabit RX hovuzundan (ölçüsü standart olaraq 1 olan CONFIG_BT_CTLR_RX_BUFFERS tərəfindən müəyyən edilir) bir düyünün daimi itirilməsinə səbəb olur; yenidən qoşulmalar zamanı bu ardıcıllığın təkrarlanması hovuzu tükədir, bundan sonra link-layer qəbul yolu NULL düyünü üzərində işləyir. Təsiri, yenidən yükləməyə qədər davam edən, autentifikasiyasız, uzaqdan tetiklenebilen xidmətdən imtina (DoS) halıdır; sızan düyün sadəcə əlçatmaz olduğu üçün yaddaşın açıqlanması və ya yaddaşın korlanması nəticələri yoxdur.
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.4.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.