CVE-2026-75083
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
Ścieżka odbiorcza sterownika NXP KW41Z IEEE 802.15.4, kw41z_rx() w sterownikach/ieee802154/ieee802154_kw41z.c, obliczyła rozmiar ładunku jako pkt_len = len - KW41Z_FCS_LENGTH w uint8_t, gdzie len to długość ramki zgłaszana przez radio. Procedura obsługi przerwania kw41z_isr() uzyskała tę długość z pola RX_FRAME_LENGTH rejestru ZLL IRQSTS — kopii bajtu długości nagłówka PHY ramki otrzymanej drogą bezprzewodową — i odrzuciła jedynie wartość zero. Dlatego zgłoszona długość jednego nie przekraczała pkt_len == 255.
Ponieważ pakiet jest przydzielany za pomocą NET_AF_UNSPEC na poziomie L2 innym niż Ethernet, funkcja net_pkt_rx_alloc_with_buffer() nie ogranicza żądania do MTU interfejsu; z domyślną pulą buforów o stałym rozmiarze (CONFIG_NET_BUF_FIXED_DATA_SIZE, CONFIG_NET_BUF_DATA_SIZE=128) alokacja przebiegła pomyślnie jako łańcuch dwóch fragmentów. Kolejne pętle kopiowania rejestru do bufora zapisują tylko pierwszy fragment, więc 255 bajtów zostało zapisanych w 128-bajtowym bloku danych net_buf, przekraczając go maksymalnie o 127 bajtów w sąsiedniej pamięci puli buforów sieciowych i odczytując do 128 bajtów poza końcem tablicy rejestrów PKT_BUFFER_RX radia.
Pole długości pochodzi z nieuwierzytelnionej ramki transmitowanej przez dowolne urządzenie w zasięgu radiowym 802.15.4 i jest przechwytywane przez sprzęt w czasie nagłówka PHY — przed zakończeniem filtrowania ramek — podczas gdy procedura obsługi próbkuje ją po usunięciu stanu przerwania, więc osoba atakująca zalewająca ramki o bajcie długości wynoszącym jeden może zapobiec niedopełnieniu. Skutkiem jest uszkodzenie pamięci we współdzielonej puli buforów odbiorczych z powodu przerwania, najprawdopodobniej awaria lub uszkodzenie danych innych pakietów; przepełnione bajty to zawartość rejestru radiowego, a nie dane utworzone przez osobę atakującą, co ogranicza wpływ na integralność.
Poprawka odrzuca każdą długość poniżej KW41Z_FCS_LENGTH i dodatkowo weryfikuje funkcję net_buf_tailroom() pierwszego fragmentu przed pętlami kopiowania, co obejmuje również wariant obliczania rozmiaru CONFIG_NET_L2_OPENTHREAD.
>_ Słabości (CWE)
>_ Referencje
Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.
This product uses the NVD API but is not endorsed or certified by the NVD.
Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.
CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.
NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org