文章总结: 文档披露n8n平台严重漏洞CVE-2026-21858,CVSS10.0。该漏洞利用Webhook的Content-Type混淆缺陷,通过JSON请求绕过解析实现任意文件读取,进而伪造Cookie进行无认证RCE。影响1.65.0至1.121.0版本。建议升级至1.121.0及以上,并排查异常JSON请求。 综合评分: 88 文章分类: 漏洞预警,漏洞分析,WEB安全
n8n远程代码执行漏洞简报(CVE-2026-21858)
科恩DF小队 科恩DF小队
腾讯安全威胁情报中心
2026年1月22日 16:11 北京
01
漏洞基本信息
- 漏洞名称
CVE-2026-21858 (别名: Ni8mare)
- 漏洞发布时间
2026年1月7日
- 影响组件
n8n (工作流自动化平台)
- 影响版本
1.65.0 至 1.121.0 (不含 1.121.0)
- 披露渠道
Cyera Research Labs博客[1]
- 漏洞危害
严重 (Critical, CVSS 10.0)。攻击者无需认证即可获取管理员权限并远程执行任意代码 (RCE),完全接管服务器,窃取数据库凭证和配置密钥 。
- 漏洞描述
n8n 在处理 Webhook 请求时存在“Content-Type 混淆”逻辑缺陷。攻击者可以通过发送特制的 JSON 请求(而非预期的 Multipart 请求)欺骗解析器,从而控制请求中的文件路径。这允许攻击者读取服务器上的任意文件(如配置文件和数据库),进而利用读取到的密钥伪造管理员 Cookie,最终通过执行命令节点获得服务器控制权 。
02
排查方式
- 异常请求头
检查发往 /form/ 端点的 POST 请求,其 Content-Type 不是 multipart/form-data (漏洞利用为 application/json) 。
- 恶意 Payload 特征
检查上述请求的 Body 中是否包含 “files” JSON 对象字段,这是利用漏洞的关键特征 。
03
防护建议
- #### 漏洞缓解方式
在 n8n 配置中暂时禁用受影响的 Form 节点功能。
- 修复建议
将 n8n 升级至 1.121.0 或更高版本。
04
洞见
-
复现截图[2]
#
- 漏洞分析
我们对比下正常请求和非正常请求的处理流程,以此来理解漏洞。
正常情况是 multipart/form-data,流程如下:
1.LiveWebhooks.executeWebhook 调用 WebhookHelpers.executeWebhook;
2.parseRequestBody 检测到 multipart/form-data,走 parseFormData();
3.parseFormData 用 formidable 解析真实上传内容,生成临时文件路径;
4.WebhookService.runWebhook → FormTriggerV2.webhook → formWebhook;
5.formWebhook 调 prepareFormReturnItem,读取 req.body.files(formidable 输出的真实文件);
6.prepareFormReturnItem → copyBinaryFile,读取临时上传文件路径。
在 application/json 下的流程是:
1.LiveWebhooks.executeWebhook 调用 WebhookHelpers.executeWebhook;
2.parseRequestBody 检测到application/json 走 parseBody()(不经过formidable);
3.parseBody 对json类型用jsonParse解析;
4.WebhookService.runWebhook → FormTriggerV2.webhook → formWebhook;
5.formWebhook 调 prepareFormReturnItem,读取 req.body.files(用户请求传入的任意文件);
6.prepareFormReturnItem->copyBinaryFile,读取任意文件。
可以看到二者的差异主要是在是否用formidable解析上传的文件,并设置files为指定路径formWebhook错误的信任前期对请求的预处理,这让我想起了之前Orange Tsai 在httpd上发现的一系列Confusion Attacks[3]也是类似的信任前期节点的处理从而导致出现问题。
在类似的软件开发中,每个节点应该做好充足的校验,不要直接信任前置节点的处理结果。
参考链接
[1] Ni8mare – Unauthenticated Remote Code Execution in n8n (CVE-2026-21858) | Cyera Research Labs
https://www.cyera.com/research-labs/ni8mare-unauthenticated-remote-code-execution-in-n8n-cve-2026-21858
[2] GitHub – Chocapikk/CVE-2026-21858: n8n Ni8mare – Unauthenticated Arbitrary File Read to RCE Chain (CVSS 10.0)
https://github.com/Chocapikk/CVE-2026-21858
[3] Confusion Attacks: Exploiting Hidden Semantic Ambiguity in Apache HTTP Server! | Orange Tsai
https://blog.orange.tw/posts/2024-08-confusion-attacks-en/
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:腾讯安全威胁情报中心 科恩DF小队 科恩DF小队《n8n远程代码执行漏洞简报(CVE-2026-21858)》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。







评论