IT资讯 最新研究指出:Node.js 的 vm2 沙箱易受原型污染攻击

floyd · 2021-10-25 09:30:06 · 热度: 14

vm2 是 node.js 的代码测试沙箱,一般用于测试不受信任的 JavaScript 代码。但近日德国网络安全研究小组 CISPA Helmholtz 的一组研究表明,Node.js 的 vm2 沙箱并不安全,这个包的一些版本可能受到原型污染(prototype pollution)攻击,攻击方可以绕过 vm2 的安全控制并进行远程代码执行(RCE) 攻击。

最新研究指出:Node.js 的 vm2 沙箱易受原型污染攻击

JavaScript 是基于原型的语言,当创建新对象时,它们会继承原型“对象”的属性和方法,包含 toString、constructor 和hasOwnProperty 等基本功能。而原型污染prototype pollution)正是 JavaScript 和其他基于对象的语言的漏洞,允许攻击者向敏感对象动态注入属性,从而运行任意代码。

在 Snyk 发布的 PoC 中,研究人员 Cristian-Alexandru 展示了 vm2 的原型污染负载和任意代码执行。(测试详情请点此查看)。 Staicu 表示: vm2 本应严格控制对全局对象/特权操作的访问,然而在测试中,这些安全控制可以被绕过。

如果你也在使用 vm2,建议及时升级到 3.9.4 或更高版本,避免遭受原型污染的影响。

猜你喜欢:
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册