一、漏洞详情
vm2是一个用于在Node.js环境中创建隔离沙箱的库,允许在安全的环境中执行不可信的JavaScript代码。
近日,监测到vm2中的一个沙箱逃逸漏洞,在受影响版本中,Promise.prototype.then和Promise.prototype.catch的回调函数未能有效地对传入的数据进行适当的过滤和隔离,导致攻击者能够绕过沙箱的限制,执行任意代码。具体来说,当异步函数返回一个globalPromise对象时,其回调没有经过充分的安全处理,攻击者可以利用这一点构造恶意代码,并在沙箱外部执行。通过精心设计的promise链,攻击者能够利用如Function构造器执行系统命令,实现沙箱逃逸。
建议受影响用户做好资产自查以及预防工作,以免遭受黑客攻击。
二、影响范围
vm2 <= 3.10.0
三、修复建议
官方已发布修复补丁,以修复该漏洞。
vm2 = 3.10.2
Designed by