Node.js Windows下路径遍历漏洞

【高危】Node.js Windows下路径遍历漏洞

漏洞描述

Node.js是Node.js开源的一个开源、跨平台的 JavaScript 运行时环境。

受影响版本中,在Windows系统下,利用Windows 保留设备名(如 AUX、CON、PRN等)可绕过path.join的路径遍历保护,导致攻击者可以通过...\...\AUX\...\...\target.txt遍历攻击者要访问的文件。

修复版本中通过给Windows 保留设备名加黑名单,特殊处理Windows 保留设备名。

MPS编号 MPS-ybe1-i6qs
CVE编号 CVE-2025-27210
处置建议 建议修复
发现时间 2025-07-16
利用成本
利用可能性
是否有POC

影响范围

影响组件 受影响的版本 最小修复版本
node.js [20.0, 20.19.4) 20.19.4
node.js [24.0, 24.4.1) 24.4.1
node.js [22.0, 22.17.1) 22.17.1

参考链接

https://www.oscs1024.com/hd/MPS-ybe1-i6qs

https://nodejs.org/en/blog/vulnerability/july-2025-security-releases

https://github.com/nodejs/node/commit/56f9db2aaa

排查方式

手动排查

  • 检查Node.js版本:确认当前版本是否在[20.0,20.19.4)、[22.0,22.17.1)、[24.0,24.4.1)范围内,命令node -v
  • 检查代码路径处理:排查使用path.join处理用户输入的场景,查看是否过滤Windows保留设备名(AUX、CON、PRN等)

一键自动排查全公司此类风险

墨菲安全为您免费提供一键排查全公司开源组件漏洞&投毒风险服务,可一键接入扫描全公司的代码仓库、容器镜像仓库、主机、制品仓库等。

试用地址:https://www.murphysec.com/adv?code=9VL5

提交漏洞情报:https://www.murphysec.com/bounty

处置方式

应急缓解方案

  1. 对用户输入的文件路径进行严格验证,过滤包含Windows保留设备名(AUX、CON、PRN、NUL、COM1-9、LPT1-9等)的请求
  2. 在使用path.join前,对输入路径进行规范化处理,移除可能的路径遍历序列
  3. 限制应用程序对文件系统的访问权限,遵循最小权限原则
  4. 部署Web应用防火墙(WAF),配置规则拦截包含特殊设备名的路径请求

根本修复方案

  1. 将Node.js版本升级至官方修复版本:
    • 20.x系列升级至20.19.4或更高版本
    • 22.x系列升级至22.17.1或更高版本
    • 24.x系列升级至24.4.1或更高版本
  2. 升级完成后重启Node.js服务使更新生效
  3. 实施版本控制策略,定期检查并应用Node.js安全更新
  4. 对应用进行全面测试,确保升级后功能正常且无兼容性问题
相关推荐
Blue桃之夭夭15 分钟前
WebStorm 快捷键大全(Windows / macOS 双平台对照)
windows·macos·webstorm
QUST-Learn3D1 小时前
C++单头文件实现windows进程间通信(基于命名管道)
c++·windows·单片机
沉木渡香2 小时前
VSCode中Java开发环境配置的三个层级(Windows版)1-3
java·windows·vscode
小糖学代码15 小时前
STL的list模拟实现(带移动构造和emplace版本)
c语言·数据结构·c++·windows·list
一人の梅雨15 小时前
淘宝店铺全量商品接口深度开发:从分页优化到数据完整性保障
linux·windows·microsoft
RoyLin15 小时前
C++ 原生扩展、node-gyp 与 CMake.js
前端·后端·node.js
林九生17 小时前
【NodeJS】使用 NVM 安装 Node.js 22 并配置国内镜像加速
node.js
开心-开心急了17 小时前
Windows 解决vscode 无法激活 miniconda 虚拟环境问题
windows·vscode·conda
风清云淡_A18 小时前
【VUECLI】node.js打造自己的前端cli脚手架工具
前端·node.js