vm2是在vm的基础上实现的沙箱,可以使用列入白名单的Node内置模块运行不受信任的代码。

近日,奇安信CERT监测到vm2远程代码执行漏洞(CVE-2023-29017),由于vm2处理异步错误时未正确处理Error.prepareStackTrace的宿主对象,导致攻击者可以绕过沙箱保护,在运行沙箱的主机上远程执行任意代码。值得注意的是,经测试,在Node.js <= 16.14.0、Node.js <= 17.4.0以及Node.js 16.xx以下的所有版本不受此漏洞影响。鉴于此漏洞影响范围较大,建议客户尽快做好自查及防护。

漏洞名称

vm2 远程代码执行漏洞

公开时间

2023-04-06

更新时间

2023-04-11

CVE编号

CVE-2023-29017

其他编号

QVD-2023-8385

威胁类型

代码执行

技术类型

代码管理不恰当

厂商

vm2

产品

vm2

风险等级

奇安信CERT风险评级

风险等级

高危

蓝色(一般事件)

现时威胁状态

POC状态

EXP状态

在野利用状态

技术细节状态

已公开

未公开

未发现

未公开

漏洞描述

由于vm2处理异步错误时未正确处理Error.prepareStackTrace的宿主对象,导致攻击者可以绕过沙箱保护,在运行沙箱的主机上远程执行任意代码。

影响版本

vm2 <= 3.9.14

同时需要 Node.js 版本满足以下条件:

Node.js > 16.14.0

Node.js > 17.4.0

Node.js 18.x

Node.js 19.x

不受影响版本

vm2 >= 3.9.15;

Node.js <= 16.14.0;

Node.js <= 17.4.0;

Node.js 16.xx以下所有版本

其他受影响组件

其他使用vm2库的产品

目前,奇安信CERT已成功复现vm2 远程代码执行漏洞(CVE-2023-29017),截图如下:

威胁评估

漏洞名称

vm2远程代码执行漏洞

CVE编号

CVE-2023-29017

其他编号

QVD-2023-8385

CVSS 3.1评级

高危

CVSS 3.1分数

10.0

CVSS向量

访问途径(AV

攻击复杂度(AC

网络

用户认证(Au

用户交互(UI

不需要

影响范围(S

机密性影响(C

改变

完整性影响(I

可用性影响(A

危害描述

攻击者利用此漏洞可以绕过沙箱保护,在运行沙箱的主机上远程执行任意代码。

处置建议

目前vm2官方已发布可更新版本,建议受影响用户升级至3.9.15及以上版本。

https://github.com/patriksimek/vm2/releases/tag/3.9.15

产品解决方案

奇安信开源卫士已支持

奇安信开源卫士20230411.230版本已支持对vm2 远程代码执行漏洞(CVE-2023-29017) 的检测。

奇安信网站应用安全云防护系统已更新防护特征库

奇安信网神网站应用安全云防护系统已全局更新所有云端防护节点的防护规则,支持对vm2 远程代码执行漏洞(CVE-2023-29017)的防护。

奇安信天眼产品解决方案

奇安信天眼新一代威胁感知系统在第一时间加入了该漏洞的检测规则,请将规则包升级到3.0.0411.13812上版本。规则名称:VM2 远程代码执行漏洞(CVE-2023-29017),规则ID:0x100215BC。奇安信天眼流量探针(传感器)升级方法:系统配置->设备升级->规则升级,选择“网络升级”或“本地升级”。

参考资料

[1]https://github.com/patriksimek/vm2/security/advisories/GHSA-7jxr-cg7f-gpgv

声明:本文来自奇安信 CERT,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。