CVE-2023-34101
WysokieCVSS 7.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 39 - wyżej niż 39% wszystkich znanych CVE
Streszczenie
Contiki-NG to system operacyjny dla urządzeń IoT. W wersji 4.8 i wcześniejszych, podczas przetwarzania pakietów ICMP DAO w funkcji `dao_input_storing`, system nie weryfikuje, czy bufor pakietu jest wystarczająco duży, co może prowadzić do odczytu danych poza przydzielonym obszarem pamięci.
Ocena ryzyka
Atakujący może wykorzystać tę podatność do odczytu danych spoza przydzielonego bufora, co może prowadzić do nieprzewidzianego zachowania systemu lub ujawnienia wrażliwych informacji.
Rekomendacja
Zaleca się aktualizację do wersji 4.9 Contiki-NG, w której problem został naprawiony. Alternatywnie, można zastosować zmiany z pull requesta #2435, aby załatać system.
Inne podatności w Contiki-NG
Zobacz wszystkie- CVE-2026-5857Wysokie
Contiki-NG w kliencie MQTT w funkcji parse_publish_vhdr() w os/net/app-layer/mqtt/mqtt.c ustawia topic_len_received=1 przed sprawdzeniem topic_len względem limitu 64 bajtów, co powoduje, że zbyt długi temat zwraca wcześniej, ale pozostawia flagę ustawioną. Przy następnym segmencie TCP parser pomija blok odczytu długości i wykonuje memcpy z niezwalidowaną długością, co prowadzi do przepełnienia bufora topic[] i nadpisania sąsiednich pól, w tym wskaźnika payload_chunk. Może to umożliwić zdalne wykonanie kodu na urządzeniach bez ochrony pamięci.
- CVE-2026-5856Wysokie
Contiki-NG w resolverze DNS/mDNS w funkcji skip_name() w os/services/resolv/resolv.c nie sprawdza granic pakietu podczas przetwarzania etykiet nazw, a wywołujący w newdata() iteruje nquestions razy na podstawie nagłówka DNS przed walidacją ID transakcji. Atakujący może ustawić nquestions większe niż liczba kompletnych pytań, co powoduje odczyt poza buforem pakietu UDP i ujawnienie zawartości pamięci lub awarię resolwera.
- CVE-2026-5855Wysokie
Contiki-NG w parserze TLV LwM2M w funkcji lwm2m_tlv_read() w os/services/lwm2m/lwm2m-tlv.c ignoruje argument długości bufora i czyta do sześciu bajtów bez sprawdzania granic. Złośliwe żądanie CoAP WRITE z końcowym TLV o dokładnie jednym bajcie powoduje odczyty poza stertą, ujawniając zawartość pamięci (w tym klucze i adresy) przez pola tlv->id, tlv->length i tlv->value. W trybie NoSec, domyślnym dla urządzeń ograniczonych, nie jest wymagane uwierzytelnienie.
- CVE-2023-34100Wysokie
Contiki-NG, system operacyjny dla urządzeń IoT, ma lukę, która pozwala na odczyt danych poza granicami bufora IPv6 podczas przetwarzania opcji MSS w pakietach TCP. Problem dotyczy indeksowania bufora w module os/net/ipv6/uip6.c, co może prowadzić do nieautoryzowanego dostępu do pamięci.
Oryginalny opis (angielski, źródło NVD)
Contiki-NG is an operating system for internet of things devices. In version 4.8 and prior, when processing ICMP DAO packets in the `dao_input_storing` function, the Contiki-NG OS does not verify that the packet buffer is big enough to contain the bytes it needs before accessing them. Up to 16 bytes can be read out of bounds in the `dao_input_storing` function. An attacker can truncate an ICMP packet so that it does not contain enough data, leading to an out-of-bounds read on these lines. The problem has been patched in the "develop" branch of Contiki-NG, and is expected to be included in release 4.9. As a workaround, one can apply the changes in Contiki-NG pull request #2435 to patch the system.

