Katalog CVE

CVE-2026-5857

WysokieCVSS 8.1
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.54%

Percentyl 43 - wyżej niż 43% wszystkich znanych CVE

Streszczenie

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.

Ocena ryzyka

Podatność może prowadzić do ujawnienia informacji, odmowy usługi lub zdalnego wykonania kodu na urządzeniach wbudowanych, co może zagrozić integralności systemów IoT.

Rekomendacja

Zaktualizuj Contiki-NG do wersji z poprawką. Jeśli to możliwe, włącz TLS dla połączeń MQTT i ogranicz zaufanie do brokerów.

Inne podatności w Contiki-NG

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

Contiki-NG's MQTT client parse_publish_vhdr() in os/net/app-layer/mqtt/mqtt.c sets topic_len_received=1 before checking topic_len against the 64-byte limit, so an over-length topic returns early but leaves the flag set. On the next TCP segment, tcp_input() re-invokes the parser with topic_received==0, and the persisted topic_len_received==1 skips the length-reading block containing the guard, falling through directly to a memcpy() that uses the unvalidated 16-bit topic_len as the copy length. The 65-byte topic[] destination overruns into adjacent struct fields including the payload_chunk pointer, which subsequent MQTT code dereferences, giving a compromised or attacker-controlled broker an arbitrary-pointer-write primitive. Contiki-NG's MQTT implementation has no TLS support so the connection is plaintext. Impact ranges from information disclosure and denial of service to remote code execution on embedded targets without memory protection.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS