当前位置: 首页 > news >正文

Happy DOM曝CVSS 9.4严重RCE漏洞,PoC已公开(CVE-2025-61927)

Happy DOM VM逃逸漏洞CVE-2025-61927

流行的JavaScript包Happy DOM曝出严重安全漏洞,该漏洞可使攻击者逃逸Node.js虚拟机(VM)上下文并在主机系统上执行任意代码。该漏洞被追踪为CVE-2025-61927,CVSSv4评分为9.4。

Happy DOM是一款用于测试、爬取和服务器端渲染(SSR)的浏览器模拟工具。据安全公告显示:"Happy DOM v19及更低版本存在安全漏洞,可能导致系统遭受远程代码执行(RCE)攻击。"

漏洞背景

Happy DOM是基于WHATWG标准的无图形界面浏览器JavaScript实现,每周下载量超过270万次,广泛应用于测试环境和SSR框架。

该漏洞源于Happy DOM在Node.js VM上下文中处理JavaScript执行的方式。项目方解释称:"Node.js VM上下文并非隔离环境,若用户在Happy DOM VM上下文中运行不受信任的JavaScript代码,可能逃逸VM并获取进程级功能访问权限。"

技术细节

本质上,该漏洞允许不受信任的脚本访问Node.js进程级对象,可能导致任意代码执行。攻击者可通过CommonJS或ESM模块实现不同级别的控制:

  • 通过CommonJS可获取require()函数导入模块
  • 通过ESM虽无法获取import或require,但仍可访问process.pid等进程级信息

漏洞源自JavaScript的Function继承链。所有类和函数都继承自Function,后者可从字符串评估代码。公告解释称:"通过遍历构造函数链可获取进程级Function,由于Function可从字符串评估代码,因此可在进程级执行代码。"

缓解措施

运行Node.js时添加--disallow-code-generation-from-strings标志可阻断此攻击向量,该标志会禁用进程级基于字符串的动态代码执行。

PoC示例

以下简单概念验证展示了风险:

const { Window } = require('happy-dom');
const window = new Window({ console });
window.document.write(`<script>const process = this.constructor.constructor('return process')();const require = process.mainModule.require;console.log('Files:', require('fs').readdirSync('.').slice(0,3));</script>
`);

该PoC通过获取process对象、加载Node内置fs模块并列出服务器文件,证实了任意命令访问能力。

潜在危害

对执行不受信任或用户提供HTML的SSR平台和测试框架风险尤其严重,可能导致:

  • 数据泄露:窃取环境变量、配置文件或API密钥
  • 横向移动:访问内部网络资源
  • 代码执行:通过子进程运行任意命令
  • 持久化:操纵本地文件系统实现长期访问

修复方案

Happy DOM维护者已发布v20版本,默认禁用JavaScript评估,并为不安全环境新增警告。项目方建议立即采取三项措施:

  1. 升级至v20或更高版本
  2. 必须启用评估时,使用--disallow-code-generation-from-strings标志运行Node.js
  3. 处理不受信任内容时完全禁用JavaScript评估
http://www.dtcms.com/a/477998.html

相关文章:

  • 关于网站建设的句子微营销app
  • 静态网站托管平台wordpress论坛源码
  • mac idea 解决properties文件乱码问题
  • IDEA 常用设置
  • 【XML】基础篇
  • 免费的企业建站系统网站上添加百度地图导航
  • Kernel Debugging Options
  • RoboTwin 2.0 测试ACT模型记录
  • tcpdump 抓包数据分析实战,命令、过滤、常见故障定位与真机补充流程
  • Maven的安装和配置以及IDEA的配置
  • 个人网站制作方法企业网站建设的作用
  • webchat单体版本启动文档记录和源码分享
  • 构建AI智能体:六十二、金融风控系统:基于信息熵和KL散度的异常交易检测
  • K8S master 节点IP变了导致访问失败
  • Golang协程
  • 深圳网站建设网站dw学生个人网页制作视频
  • 深度强化学习 | 基于SAC算法的动态避障(ROS C++仿真)
  • 智能美甲灯方案,UV/LED美甲光疗机美甲烤灯MCU控制方案开发设计
  • 用html5写一个可输入1-100行1-100列的矩阵计算器
  • 如何在第三方网站做推广湖北建设注册中心网站首页
  • 福州网站建设信息百度推广账号登陆入口
  • 纯知识干货java学习之问答一
  • L05_后端_MinIO 安装使用入门指南(实战版)
  • [ SpringBoot ]
  • Nginx 负载均衡调度算法
  • 全链路Controller压测负载均衡
  • FastCRUD:为 FastAPI 量身打造的现代化异步 CRUD 框架,让后端开发更高效
  • 宠物服务到店预约/宠物服务上门预约/商城零售o2o
  • 网站做推广企业wordpress最新模板
  • 云手机长期使用会消耗很多流量吗