← Все новости

Критическую дыру в Node-RED эксплуатируют: на серверы ставят Linux-бота и веб-шеллыCritical Node-RED flaw is being exploited to plant a Linux bot and web shells

VulnCheck поймала эксплуатацию CVE-2026-58115 с оценкой 10.0: атакующий одним запросом разворачивает flow, который скачивает и запускает бинарь. Под ударом не только серверы автоматизации, но и промышленные устройства с Node-RED внутри.VulnCheck caught exploitation of CVE-2026-58115, rated 10.0: a single request deploys a flow that downloads and runs a binary. The target is not only automation servers but industrial devices with Node-RED inside.

Node-RED — визуальный конструктор потоков на Node.js, которым собирают автоматизацию в браузере: от домашних сценариев на Raspberry Pi до промышленных установок. Именно поэтому дыра в нём интересна не только веб-администраторам.

CVE-2026-58115 получила 10.0 от Siemens, которая нашла её в августе: в SIMATIC IoT2050 Advanced с Industrial OS до V4.3.4.1 Node-RED установлен как часть продукта. Формулировка вендора прямая — неаутентифицированный удалённый атакующий может создать вредоносный flow и выполнить произвольный код с максимальными правами.

Как это выглядит на практике

30 октября канарейка VulnCheck зафиксировала полный эксплойт в одном запросе POST /flows. Атакующий развернул flow из двух штатных узлов: inject срабатывает при старте, exec выполняет shell-команду. Дальше всё по цепочке: скачивание файла bot-linux-amd64, сохранение под скрытым именем в памяти, запуск в фоне. Три слоя кодирования по пути.

Что именно за бинарь, исследователи не выяснили — это мог быть майнер, DDoS-бот или обратная оболочка. Зато позже пришли другие полезные нагрузки: shell-скрипт, файл, замаскированный под поток ядра, и веб-шеллы, которые переживают перезагрузку.

Тот же адрес (в диапазоне Microsoft, геолокация — Бразилия) за 30 октября — 1 ноября 16 раз бил по Node-RED и суммарно 125 раз по восьми CVE в Apache Solr, Camunda, Gitea, MLflow, Traefik и Joomla. Это не целевая атака, а массовое сканирование: «нашёл — сломал».

Что делать

VulnCheck добавила уязвимость в свой каталог эксплуатируемых, в CISA KEV её на момент публикации не было. Практический минимум: проверить, торчит ли редактор в интернет, включить adminAuth, обновить Node-RED и Siemens Industrial OS, а затем просмотреть существующие flows — чужой узел exec ничем не отличается от вашего.

Node-RED is a visual flow builder on Node.js used to wire automation in a browser: from home scenarios on a Raspberry Pi to industrial installations. That is why a hole in it matters beyond web administrators.

CVE-2026-58115 was rated 10.0 by Siemens, which found it in August: SIMATIC IoT2050 Advanced with Industrial OS before V4.3.4.1 ships Node-RED as part of the product. The vendor’s wording is blunt — an unauthenticated remote attacker can create a malicious flow and execute arbitrary code with maximum privileges.

What it looks like in practice

On 30 October a VulnCheck canary recorded a complete exploit in a single POST /flows request. The attacker deployed a flow built from two stock nodes: inject fires at startup and exec runs a shell command. Then the chain follows: download bot-linux-amd64, save it under a hidden name in a memory-backed location, run it in the background — all behind three layers of encoding.

What the binary was, the researchers could not say; it could be a miner, a DDoS bot or a reverse shell. Later requests brought other payloads: a shell script, a file disguised as a kernel worker thread, and web shells that survive a reboot.

The same address, in Microsoft’s range and geolocating to Brazil, hit Node-RED 16 times between 30 October and 1 November and logged 125 hits against eight CVEs in Apache Solr, Camunda, Gitea, MLflow, Traefik and Joomla. This is not a targeted attack but mass scanning: find it, break it.

What to do

VulnCheck added the flaw to its exploited list; it was not in CISA KEV at the time of writing. The practical minimum: check whether the editor is exposed to the internet, enable adminAuth, update Node-RED and Siemens Industrial OS, then review existing flows — someone else’s exec node looks exactly like yours.

Источники