Skip to content
KitploitKITPLOIT
工具博客
Log in
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Analysis-And-POC-N8N-CVE-2025-68613 — n8n 中 CVE-2025-68613 漏洞的技术研究,涵盖受影响版本、实验探索场景、攻击与防御分析及缓解策略。 | Kitploit
工具/GitHubGitHub/releaseown/analysis-and-poc-n8n-cve-2025-68613
漏洞分析代码分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育红队Payload 开发

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
GitHub
releaseown/analysis-and-poc-n8n-cve-2025-68613

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

n8n 中 CVE-2025-68613 漏洞的技术研究,涵盖受影响版本、实验探索场景、攻击与防御分析及缓解策略。

查看仓库
1129个月前尚未审核
分享

概述(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 进行技术性文档记录,涵盖漏洞背景、受影响版本、利用方法以及建议的缓解措施。

在 hunter 中搜索 n8n

受影响版本与已修复版本

状态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 Web 界面。

n8n 登录界面

此步骤确认攻击并非匿名攻击。该漏洞需要已认证的用户。


步骤 2 — 权限确认

登录后,验证用户是否具有创建和编辑工作流的权限。

用户管理界面

这很关键,因为只有拥有此访问级别的用户才能在工作流中插入动态表达式。


步骤 3 — 创建新工作流

使用已认证的用户创建一个全新的工作流。

创建工作流的初始界面

此处开始合法使用 n8n 功能,该功能在受影响版本中可被利用。


步骤 4 — 添加手动触发器

添加到工作流的第一个节点是手动触发器。

添加手动触发器

该节点的作用: 允许手动执行工作流,用作流程的起点。

在此场景中,它仅作为工作流执行的入口点。


步骤 5 — 添加“编辑字段(设置)”节点

添加的第二个节点是“编辑字段(设置)”。

添加“编辑字段(设置)”节点

该节点的作用: 该节点允许在工作流中创建、修改或覆盖数据字段。它接受静态值或在执行时评估的 JavaScript 表达式。

正是在这一点上,漏洞得以显现。


步骤 6 — 插入易受攻击的表达式

在“编辑字段(设置)”节点的值字段中,插入一个由 {{ }} 包裹的 JavaScript 表达式,这是 n8n 用于评估动态表达式的格式。

包含有效载荷的表达式字段

示例有效载荷:

{{ (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/
下载工具