В системе RTOS Zephyr обнаружено около 25 уязвимостей

Zephyr

Исследователи из компании NCC Group опубликовали в последнее время результаты аудитов проекта Zephyr, которая представляет собой операционную систему реального времени (RTOS), предназначенную для оснащения устройств в соответствии с концепцией «Интернета вещей» (IoT). Zephyr разрабатывается при участии Intel.

Zephyr предоставляет единое виртуальное адресное пространство для всех процессов глобальное общее (SASOS, Операционная система с единым адресным пространством). Код конкретного приложения объединяется с ядром, адаптированным для конкретного приложения, и образует монолитный исполняемый файл для загрузки и запуска на определенных компьютерах.

Все системные ресурсы определяются на этапе компиляции, что уменьшает размер кода и увеличивает производительность. В образ системы можно включить только те функции ядра, которые необходимы для запуска приложения.

Примечательно, что среди основных преимуществ Зефир упомянул разработка с учетом безопасности. Утверждается, что Все этапы разработки проходят обязательные этапы подтверждение безопасности кода: нечеткое тестирование, статический анализ, тестирование на проникновение, проверка кода, анализ развертывания бэкдора и моделирование угроз.

Об уязвимостях

Аудит выявил 25 уязвимостей в Zephyr и 1 уязвимость в MCUboot. Всего их идентифицировали 6 уязвимостей в сетевом стеке, 4 в ядре, 2 в командной оболочке, 5 в обработчиках системных вызовов, 5 в подсистеме USB и 3 в механизме обновления прошивки.

Двум задачам присвоен критический уровень опасности, два: высокий, 9 средний, 9 - низкий и 4 - с учетом. Проблемы критически влияет на стек IPv4 и парсер MQTT, а чтоК опасным относятся USB-накопитель и драйверы USB DFU..

На момент раскрытия информации были подготовлены исправления только для 15 уязвимостей. Что еще более опасно, все еще остаются решенные проблемы, ведущие к отказу в обслуживании или связанному с этим отказу механизмов дополнительной защиты ядра.

В стеке IPv4 платформы обнаружена удаленно используемая уязвимость, которая приводит к повреждению памяти при обработке пакетов ICMP, измененных определенным образом.

Еще одна серьезная проблема была обнаружена в парсере протокола MQTT, qЭто вызвано отсутствием надлежащей проверки длины полей в заголовке и может привести к удаленному выполнению кода. Менее опасные проблемы отказа в обслуживании обнаруживаются в стеке IPv6 и реализации протокола CoAP.

Другие проблемы можно использовать локально вызвать отказ в обслуживании или выполнение кода на уровне ядра. Большинство этих уязвимостей связано с отсутствием надлежащей проверки аргументов системных вызовов и может привести к записи и чтению произвольных областей памяти ядра.

Проблемы также касаются самого кода обработки системного вызова - доступ к отрицательному номеру системного вызова приводит к целочисленному переполнению. ИЯдро также выявило проблемы при реализации защиты ASLR. (рандомизация адресного пространства) и механизм установки канареечных меток в стек, что делает эти механизмы неэффективными.

Многие проблемы влияют на стек USB и отдельные драйверы. Например, проблема в запоминающем устройстве USB позволяет вызвать переполнение буфера и запустить код на уровне ядра при подключении устройства к управляемому атакующему хосту USB.

Уязвимость в USB DFU, драйвере для загрузки новой прошивки через USB, позволяет загружать модифицированный образ прошивки во внутреннюю флэш-память микроконтроллера без использования шифрования и в обход режима безопасной загрузки с проверкой цифровой подписи компонентов. Кроме того, был изучен код открытого загрузчика MCUboot, в котором была обнаружена неопасная уязвимость, которая могла привести к переполнению буфера при использовании Simple Management Protocol (SMP) поверх UART.


Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.