Исследователи из Microsoft выявили схожие уязвимости в двух десятках прошивок подключенных к интернету устройств, используемых в промышленном производстве, медицинских учреждениях, корпоративных и домашних сетях. Проблемы, объединенные под общим именем BadAlloc, позволяют обойти защиту и удаленно выполнить вредоносный код в целевой системе.
Согласно описанию Microsoft, все эти уязвимости возникли из-за неправильной реализации функций выделения памяти при создании операционных систем реального времени (RTOS), SDK-комплектов и библиотек СИ (libc). Во всех случаях разработчики не позаботились об адекватной проверке входных данных; в итоге открылась возможность через переполнение буфера в куче вызвать отказ в обслуживании (DoS) или внедрить и выполнить сторонний код.
Уязвимости BadAlloc выявлены в продуктах многих вендоров, в том числе Amazon, ARM, Cesanta, Google Cloud, Samsung, Texas Instruments и Tencent. Публикуя полный список, американская Группа быстрого реагирования на киберинциденты в сфере управления производственными процессами (ICS-CERT) отметила, что данная проблема могла быть также привнесена в различные opensource-форки.
Сведений об использовании BadAlloc в реальных атаках пока нет, однако владельцев затронутых встраиваемых и IoT-устройств призывают как можно скорее обновить прошивки. Информация о наличии патчей приведена в бюллетене ICS-CERT.
В ожидании обновлений прошивки пользователи могут принять меры для снижения рисков — повысить сегментацию сети, предельно ограничить и обезопасить интернет-доступ к уязвимым устройствам, а также ввести непрерывный мониторинг сетевой активности.