Ad

CVE-2026-5857

CRITICAL CVSS 4.0: 9,2 EPSS 0.54%
Обновлено 14 августа 2026
Contiki-Ng
Параметр Значение
CVSS 9,2 (CRITICAL)
Тип уязвимости CWE-787 (Запись за пределами буфера)
Поставщик Contiki-Ng
Публичный эксплойт Нет

MQTT-клиент Contiki-NG parse_publish_vhdr() в os/net/app-layer/mqtt/mqtt.c устанавливает theme_len_received=1 перед проверкой theme_len на соответствие 64-байтовому пределу, поэтому тема слишком большой длины возвращается раньше, но оставляет установленный флаг. В следующем TCP-сегменте tcp_input() повторно вызывает синтаксический анализатор с параметром theme_received==0, а сохраненный параметр theme_len_received==1 пропускает блок чтения длины, содержащий защиту, переходя непосредственно к memcpy(), который использует непроверенный 16-битный параметр Topic_len в качестве длины копии. 65-байтовый адрес назначения subject[] переполняет соседние поля структуры, включая указатель payload_chunk, который последующий код MQTT разыменовывает, предоставляя скомпрометированному или контролируемому злоумышленником брокеру примитив записи произвольного указателя. Реализация MQTT Contiki-NG не поддерживает TLS, поэтому соединение является открытым текстом.

Воздействие варьируется от раскрытия информации и отказа в обслуживании до удаленного выполнения кода на встроенных объектах без защиты памяти.

Показать оригинальное описание (EN)

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.

Характеристики атаки

Способ атаки
По сети
Атака возможна удалённо
Сложность
Высокая
Сложно эксплуатировать
Условия для атаки
Не требуются
Нет дополнительных условий
Нужны права
Не требуются
Права не нужны
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Высокое
Полная утечка данных
Целостность
Высокое
Полная модификация данных
Доступность
Высокое
Полный отказ в обслуживании

Строка CVSS v4.0

Уязвимые продукты

contiki-ng:contiki-ng

Связанные уязвимости