Атака на Node-RED: один HTTP-запрос ставит бота на ICS-устройства

Атака на Node-RED: один HTTP-запрос ставит бота на ICS-устройства

30 октября 2026 года приманка, имитирующая уязвимый сервис, зафиксировала эксплуатацию CVE-2026-58115 - уязвимости Node-RED, открывающей административный интерфейс без аутентификации. Один HTTP-запрос развернул поток, который скачал и запустил Linux-бота. Попытка последовала через три дня после публикации средств детектирования. Node-RED встраивают в коммерческие ICS/OT-продукты, включая контроллеры Siemens SIMATIC IoT2050.

Описание

Атака на Node-RED: один HTTP-запрос ставит бота на ICS-устройства

По данным VulnCheck, источник запроса находится в адресном пространстве Microsoft, а геолокация относит его к Бразилии. С 30 октября по 1 ноября оттуда пришло 16 событий против этой же уязвимости с несколькими разными нагрузками. Первое обращение несло не разведку, а готовый эксплойт целиком.

Всё уместилось в две встроенные ноды. Одна срабатывает сама через секунду после развёртывания потока, вторая исполняет системную команду на сервере. Приманка ответила кодом 200 и новой ревизией потока - так же, как ответил бы любой незащищённый экземпляр, поэтому событие записано как успешная эксплуатация. Сама команда прошла три слоя кодирования, включая base64, чтобы фильтр не увидел в теле запроса обращения к wget или curl.

После декодирования открылся загрузчик. Он пробует основной инструмент скачивания и запасной, кладёт файл в область памяти, а не на диск, и скрывает имя точкой в начале. Запуск отсоединён от процесса Node-RED, чтобы пережить его завершение. Проверки, что загрузка удалась, и очистки следов нет - команда рассчитана на один тихий проход.

Сервер, отдающий полезную нагрузку, - отдельная машина; напрямую её не наблюдали, адрес виден только внутри раскодированной команды. Широта активности говорит о массовом сканировании: тот же адрес пробовал чужие системы, включая Apache Solr с уязвимостью CVE-2019-17558. Разные клиентские строки и разные нагрузки в запросах указывают скорее на общую или арендованную инфраструктуру, чем на одного оператора. Эксплуатации в устройствах Siemens исследователи при этом не наблюдали.

К 1 ноября тот же адрес прислал новые варианты. Один вместо бинаря забирает промежуточный shell-скрипт, другой ведёт на иной сервер и сохраняет файл под именем, имитирующим поток ядра. Несколько запросов вообще ничего не скачивали: поток открывал HTTP-эндпоинт, связанный с исполнением команды, и команду можно передать позже параметром запроса. Такой бэкдор переживает перезагрузку, тогда как имплант в памяти исчезает. Ни промежуточный скрипт, ни файл с нового сервера получить не удалось.

По карточке CVE, уязвимость получила 10 баллов по CVSS 3.1. Слабость - CWE-306, отсутствие проверки подлинности при доступе к интерфейсу. Затронуты SIMATIC IoT2050 с Industrial OS и Node-RED версий ниже V4.3.4-1; обходных мер производитель не приводит. Эксплуатацию компания также внесла в собственный каталог Known Exploited Vulnerabilities, в перечне CISA записи на момент публикации не было. Имя загружаемого файла указывает на сборку под Linux amd64, но сам бинарь не получен. Что именно исполняется на заражённой системе и кто стоит за единственным адресом, не установлено. Масштаб эксплуатации и число затронутых устройств в публикации не раскрываются; неясно и то, остаются ли такие интерфейсы доступными из интернета.

Индикаторы компрометации

Комментарии: 0