news 2026/6/9 18:38:40

AdonisJS 9.2 框架存在严重漏洞,可导致任意文件写入和RCE

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AdonisJS 9.2 框架存在严重漏洞,可导致任意文件写入和RCE

聚焦源代码安全,网罗国内外最新资讯!

编译:代码卫士

以注重人体工程学设计和运行速度著称的热门Node.js全栈 web 框架 AdonisJS 的文件上传处理中存在一个严重漏洞(CVE-2026-21440,CVSS评分9.2),可导致远程攻击者覆写敏感系统文件,甚至实现远程代码执行 (RCE)。

该漏洞影响用于解析多部分表单数据的核心组件 @adonisjs/bodyparser 包。当开发人员使用 MultipartFile.move(location,options) 函数保存已上传的文件时,该系统依赖于本不应信任的信任。

安全公告解释称,“如未提供 options.name 参数,则系统默认为未清理的客户端文件名称,并通过 path.join(location,name) 构建目标路径。”这就导致攻击者提供一个包含遍历序列(如 ../../)的构造的文件名称。由于系统将该恶意名称与目标目录连接,因此该文件能够“突破默认的或由开发人员选择的预期目录”,最终存放到该进程能够访问的服务器文件系统上的任何地方。更具风险的是,默认设置具有过度许可性:“若未提供 options.overwrite参数,则系统默认启用覆写模式,导致文件被覆写。”

这种“任意文件写入”漏洞的影响远超简单的破坏行为,如果攻击者能够覆写特定文件,则实际可控制服务器。分析报告提到,“如果攻击者能够覆写应用代码、启动脚本或者配置随后被执行/加载的配置文件,则很有可能实现RCE。”

虽然并不一定能够实现RCE,具体取决于文件权限和部署布局,但攻陷整个系统的可能性很大。安全公告也提到,之前的文档版本可能演示了可导致开发人员陷入这种“易受攻击代码路径”的示例,也加剧了该问题的严重性。

该漏洞影响使用 bodyparser 包的大量安装版本:

  • @adonisjs/bodyparser 10.1.1及之前版本

  • 早于11.0.0-next.6的预发布版本11.x

维护人员已为这两个主要版本发布修复方案。建议开发人员立即更新其依赖关系至10.1.2版本和11.0.0-next.6版本。此外,若需官方版本注释和补丁,可参见该项目的GitHub 仓库。

开源卫士试用地址:https://oss.qianxin.com/#/login

代码卫士试用地址:https://sast.qianxin.com/#/login


推荐阅读

MongoDB库中存在多个漏洞,可用于在Node.js服务器上实现RCE

Node.js 修复多个漏洞,可导致RCE和HTTP请求走私

Node.js 沙箱易受原型污染攻击

原文链接

https://securityonline.info/cve-2026-21440-new-adonisjs-9-2-critical-flaw-allows-arbitrary-file-writes-and-rce/

题图:Pixabay License

本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的产品线。

觉得不错,就点个 “在看” 或 "赞” 吧~

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/8 17:38:52

VeighNa量化交易框架:从零开始的完整安装与配置指南

VeighNa量化交易框架:从零开始的完整安装与配置指南 【免费下载链接】vnpy 基于Python的开源量化交易平台开发框架 项目地址: https://gitcode.com/vnpy/vnpy 想要快速掌握专业量化交易系统的搭建方法吗?VeighNa量化交易框架为您提供了一套完整的…

作者头像 李华
网站建设 2026/6/8 17:38:50

为什么选择Anaconda进行AI模型训练

Anaconda加速AI模型训练的技术文章大纲为什么选择Anaconda进行AI模型训练Anaconda集成了Python环境、常用库和工具链,简化了AI开发环境配置Conda包管理解决了依赖冲突问题,确保训练环境稳定预编译的科学计算库(如MKL加速的NumPy)提…

作者头像 李华
网站建设 2026/6/8 17:38:48

零成本畅享AI编程:Cursor Pro免费使用完整解决方案

零成本畅享AI编程:Cursor Pro免费使用完整解决方案 【免费下载链接】cursor-free-everyday 完全免费, 自动获取新账号,一键重置新额度, 解决机器码问题, 自动满额度 项目地址: https://gitcode.com/gh_mirrors/cu/cursor-free-everyday 还在为Cursor Pro的额…

作者头像 李华
网站建设 2026/6/8 17:38:46

GameNative安装按钮灰色不可用问题深度解析与高效解决方案

GameNative安装按钮灰色不可用问题深度解析与高效解决方案 【免费下载链接】GameNative Lightweight unofficial Steam client for Android 项目地址: https://gitcode.com/gh_mirrors/ga/GameNative GameNative作为Android平台上的轻量级非官方Steam客户端,…

作者头像 李华
网站建设 2026/6/9 1:41:52

MoBA混合块注意力终极指南:解锁长文本LLM的极致性能

MoBA混合块注意力终极指南:解锁长文本LLM的极致性能 【免费下载链接】MoBA MoBA: Mixture of Block Attention for Long-Context LLMs 项目地址: https://gitcode.com/gh_mirrors/mob/MoBA 混合块注意力机制MoBA是当前长文本语言模型优化的革命性技术&#x…

作者头像 李华
网站建设 2026/6/9 1:47:09

设备树下LED驱动实现步骤:从零实现

从点亮一盏灯开始:手把手实现基于设备树的LED驱动在嵌入式开发的世界里,“点亮一个LED”常被比作程序员的“Hello, World!”。但别小看这盏灯——当你用Linux内核的标准机制、通过设备树动态配置、再经由sysfs接口远程控制它时,你已经踩在了现…

作者头像 李华