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

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

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

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

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

Категории

Все категории
Loading categories
Analysis-And-POC-N8N-CVE-2025-68613 — Техническое исследование уязвимости CVE-2025-68613 в n8n, охватывающее затронутые версии, сценарий лабораторного исследования, наступательный и оборонительный анализ, а также стратегии смягчения. | Kitploit
Инструменты/GitHubGitHub/rianjuniorsf/analysis-and-poc-n8n-cve-2025-68613
Оборонительные ИнструментыАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеСтатьи и ИсследованияОбучение и ОбразованиеRed Teaming

Популярное

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

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

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

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

Смотреть все инструменты →
GitHub
rianjuniorsf/analysis-and-poc-n8n-cve-2025-68613

Analysis-And-POC-N8N-CVE-2025-68613

Техническое исследование уязвимости CVE-2025-68613 в n8n, охватывающее затронутые версии, сценарий лабораторного исследования, наступательный и оборонительный анализ, а также стратегии смягчения.

Репозиторий
1539 месяцев назадЕщё не проверено
Поделиться

Обзор (n8n и CVE-2025-68613)

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

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

На практике данная уязвимость может быть использована для выполнения команд на сервере, где запущен n8n, с привилегиями самого приложения. Уязвимые версии охватывают диапазон от 0.211.0 до версий, предшествующих исправлениям, применённым в 1.120.4, 1.121.1 и 1.122.0.

n8n

Потенциальное воздействие

  • Полная компрометация экземпляра n8n.
  • Доступ к данным, обрабатываемым рабочими процессами.
  • Раскрытие учётных данных, SSH-ключей, переменных окружения и токенов интеграций.
  • Косвенный доступ к подключённым системам.

Данный репозиторий технически документирует CVE-2025-68613, охватывая контекст уязвимости, затронутые версии, эксплуатацию и рекомендуемые меры по устранению.

n8n search in hunter

Уязвимые и исправленные версии

СтатусВерсия n8nПримечание
❌ Уязвима>= 0.211.0Появление уязвимого механизма
❌ Уязвима< 1.120.4Уязвима до патча в ветке 1.120
❌ Уязвима< 1.121.1Уязвима до патча в ветке 1.121
❌ Уязвима< 1.122.0Уязвима до патча в ветке 1.122
✅ Исправлена1.120.4Официальное исправление применено
✅ Исправлена1.121.1Официальное исправление применено
✅ Исправлена>= 1.122.0Исправление включено по умолчанию

Рекомендуется немедленно обновиться до версии 1.122.0 или выше.

Доказательство концепции (PoC)

Предварительные условия сценария

Для демонстрации уязвимости требуются следующие условия:

  • Экземпляр n8n, работающий на уязвимой версии
  • Аутентифицированный пользователь
  • Права на запись (создание или редактирование рабочих процессов)

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


Шаги эксплуатации

Шаг 1 — Аутентификация на платформе

Первым шагом необходимо войти в веб-интерфейс n8n с действительной учётной записью пользователя.

n8n login screen

Этот шаг подтверждает, что атака не является анонимной. Уязвимость требует аутентифицированного пользователя.


Шаг 2 — Подтверждение прав

После входа в систему убедитесь, что пользователь имеет права на создание и редактирование рабочих процессов.

User management screen

Это важно, поскольку только пользователи с таким уровнем доступа могут вставлять динамические выражения в рабочие процессы.


Шаг 3 — Создание нового рабочего процесса

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

Initial screen for creating a workflow

Здесь начинается легитимное использование функциональности n8n, которая в уязвимых версиях может быть эксплуатирована.


Шаг 4 — Добавление Manual Trigger

Первым узлом, добавленным в рабочий процесс, является Manual Trigger.

Adding the Manual Trigger

Что делает этот узел: Позволяет вручную запускать рабочий процесс, используется как отправная точка потока.

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


Шаг 5 — Добавление узла Edit Fields (Set)

Вторым добавляется узел Edit Fields (Set).

Adding the Edit Fields (Set) node

Что делает этот узел: Этот узел позволяет создавать, изменять или перезаписывать поля данных внутри рабочего процесса. Он принимает статические значения или выражения JavaScript, вычисляемые во время выполнения.

Именно в этот момент проявляется уязвимость.


Шаг 6 — Вставка уязвимого выражения

В поле значения узла Edit Fields (Set) вставьте выражение JavaScript, обёрнутое в {{ }}, — это формат, используемый n8n для вычисления динамических выражений.

Expression field with payload

Пример полезной нагрузки:

{{ (function(){ 
  return this.process.mainModule
    .require('child_process')
    .execSync('id')
    .toString() 
})() }}
  • (function(){ ... })(): Определяет самовызывающуюся функцию, позволяя инкапсулировать всю логику и напрямую возвращать значение в выражение рабочего процесса.
  • this.process: Обращается к внутреннему объекту Node.js process, который предоставляет информацию о среде выполнения и ресурсы.
  • process.mainModule: Позволяет получить доступ к главному модулю приложения, обеспечивая загрузку других внутренних модулей Node.js.
  • require('child_process'): Нативный модуль Node.js, позволяющий создавать новые процессы в операционной системе и выполнять внешние команды.
  • execSync('id'): Выполняет команду непосредственно в операционной системе, где запущен n8n, с привилегиями процесса приложения.
  • .toString(): Преобразует вывод выполненной команды в текст, позволяя отобразить результат в интерфейсе n8n.

Итоговый результат

Отображённый результат подтверждает, что команда была выполнена в операционной системе с привилегиями процесса n8n, что характеризует удалённое выполнение кода (RCE).

Ссылки

  • https://nvd.nist.gov/vuln/detail/CVE-2025-68613
  • https://motasemhamdan.medium.com/unpacking-n8n-rce-cve-2025-68613-39e4f3417358
  • https://ccb.belgium.be/advisories/warning-remote-code-execution-n8n-patch-immediately
  • https://gbhackers.com/poc-exploit-for-critical-n8n-rce-vulnerability/
Скачать инструмент