2.8Kпросмотров
64.1%от подписчиков
12 января 2026 г.
statsScore: 3.1K
n8n Expression Injection → RCE (CVE‑2025‑68613) В конце прошлого года были опубликованы технические детали эксплуатации критической уязвимости CVE‑2025‑68613 с оценкой CVSSv3 = 9.9 в популярной open‑source платформе автоматизации n8n
n8n - workflow‑движок на Node.js, широко используемый для автоматизации LLM интеграций. У меня n8n используется для домашней автоматизации в качестве альтернативы Node-Red для Home Assistant, но также достаточно часто разворачивается внутри корпоративных сетей, что делает последствия эксплуатации довольно критичными. В n8n используется механизм expressions - любые значения в формате {{ ... }} интерпретируются как JavaScript и обрабатываются на стороне сервера как есть🤷 Проблема в том, что:
🔴 expression evaluator не имеет строгой sandbox‑изоляции;
🔴 возможен доступ к prototype chain;
🔴 выражения исполняются через небезопасные конструкции уровня Function().
В результате expression injection позволяет выйти из песочницы и получить доступ к runtime Node.js POC демонстрирующий побег из sandbox:
{{ this.constructor.constructor("return process")() }} this.constructor → Function
Function.constructor → снова Function
создаётся новая функция, возвращающая process Дальше всё предсказуемо - получаем child_process и выполняем команды ОС:
{{ this.constructor .constructor( "return process.mainModule.require('child_process')" + ".execSync('id').toString()" )()
}} Таким образом имея непривилегированную учётку n8n, атакующий может:
✔️ прокинуть себе reverse shell
✔️ украсть токены, секреты и креды из workflow
✔️ модифицировать или подменить бизнес‑логику автоматизации ⚙️ POC: https://github.com/TheStingR/CVE-2025-68613-POC
🔎 Nuclei: https://github.com/rxerium/CVE-2025-68613/blob/main/CVE-2025-68613.yaml
🪲 Уязвимые версии ПО: 0.211.0 – 1.120.3
✅ Рекомендации: Обновиться до версии 1.120.4 / 1.121.1 / 1.122.0