Бесплатно Экспресс-аудит сайта:

03.06.2020

В компонентах IoT-устройств обнаружено 26 уязвимостей

Исследователи безопасности из компании NCC Group обнаружили 26 уязвимостей в операционной системе реального времени Zephyr, специально разработанной для IoT-приложений, и аппаратно-независимом загрузчике с открытым исходным кодом MCUboot. Эксплуатация уязвимостей позволяет злоумышленнику вызвать отказ в обслуживании (DoS) и повысить привилегии.

Данные компоненты содержатся в ряде датчиков и IoT-устройств, включая детские мониторы, светодиоды и беспроводные шлюзы.

NCC Group обнаружила 25 уязвимостей в Zephyr, и одну в MCUboot. Эксперты обнаружили проблемы, связанные с повреждением памяти, множественные пути, позволяющие скомпрометированному пользовательскому приложению повысить привилегии до уровня ядра, и многочисленные уязвимости в дизайне некоторых систем защиты в ядре. Проблемы могут быть проэксплуатированы как локально, так и удаленно.

Уязвимость удаленного повреждения памяти в стеке Zephyr IPv4 может быть проэксплуатирована путем отправки одного специально сформированного ICMP-пакета. Синтаксический анализатор MQTT также содержал уязвимость (CVE-2020-10062) удаленного повреждения памяти, которая была связана с некорректной проверкой полей длины, извлеченных из заголовка MQTT-пакета.

Стек IPv6 содержит DoS-уязвимость — удаленный злоумышленник может нарушить работоспособность ядра путем отправки серии вредоносных пакетов. Другая DoS-уязвимость (CVE-2020-10063) была обнаружена в драйвере протокола CoAP.

В подсистеме USB было обнаружено несколько проблем, которые могут быть проэксплуатированы вредоносным хостом с подключенным к нему устройством Zephyr. Например, драйвер USB DFU содержал опасную уязвимость (CVE-2020-10019) повреждения памяти, а драйвер USB-накопителя содержал множественные уязвимости (CVE-2020-10021) повреждения памяти и проблемы, позволяющие извлечь данные из памяти. Недочет в дизайне USB DFU позволяет атакующему раскрыть образ прошивки в открытом тексте во внутренней памяти микроконтроллера и таким образом обойти функцию шифрования в MCUboot.

В настоящее время были исправлены 15 из 26 обнаруженных проблем.