进入环境,给了一段代码

浅谈npm,vm,vm2,Node.js沙盒逃逸

这是一题是关于Node.js沙盒逃逸的。其中var { VM } = require(“vm2”);是Node.js 官方安全沙箱的库(是Node.js有关沙盒的代码)

在较早一点的 node 版本中 (8.0 之前),当 Buffer 的构造函数传入数字时, 会得到与数字长度一致的一个 Buffer,并且这个 Buffer 是未清零的
8.0 之后的版本可以通过另一个函数 Buffer.allocUnsafe(size) 来获得未清空的内存

低版本的node可以使用buffer()来查看内存,只要调用过的变量,都会存在内存中,那么可以构造paylaod来读取内存
req.query.data.length 的限制可以通过传入数组绕过

1.题目通过访问得到了一串代码,这段代码提示在沙箱中执行。

2.由于沙箱的隔离机制,无法执行eval()等操作系统的函数。

3.要拿到flag则需要让eval()执行。利用逃逸沙箱漏洞,从而得到flag。

看了别人的解题思路,通过脚本,找到内存泄漏时执行的eval()函数,得到flag。

import requests
import time
url = 'http://ip:port/?data=Buffer(500)'
response = ''
while 'flag' not in response:req = requests.get(url)response = req.textprint(req.status_code)time.sleep(0.1)if 'flag{' in response:print(response)break

攻防世界——leaking相关推荐

  1. xctf攻防世界Leaking wp

    访问题目地址 "use strict";var randomstring = require("randomstring"); var express = re ...

  2. 【攻防世界001】Guess-the-Number

    攻防世界之前刷了几十题了,没写wp,感觉很简单没啥意思.后来参加了几次比赛,发现有点干不动,决定还是老老实实刷题好了.这是第一篇wp,这题很简单,是个jar,用jd-gui可以得到java源码. 原来 ...

  3. 攻防世界(pwn)--Mary_Morton 利用格式化字符串+栈溢出破解Canary的保护机制

    ctf(pwn) canary保护机制讲解 与 破解方法介绍 程序执行流程 有三个选项,1是利用栈溢出,2是利用格式化字符串,3是退出;可连续输入多次; IDA分析 解题思路 程序存在canary保护 ...

  4. 攻防世界(Pwn) forgot---栈溢出;(方法二)

    攻防世界(Pwn) forgot-栈溢出:(方法一) 里面对问题描述的更详细一点 返回目标函数 0x80486CC 方法二(爆破流) 因为最终返回的是 v3[0]-v3[9] 之中的一个函数, v3[ ...

  5. 攻防世界(Pwn) forgot---栈溢出;(方法一)

    攻防世界(Pwn) forgot-栈溢出:(方法二) 介绍 这道题表面看起来有点复杂,其实很简单,有两种方法可以来做这一道题; 方法一(精确打击) 文件运行流程是: 1.先输入名字 2. 输入一串字符 ...

  6. 攻防世界misc新手_[攻防世界]mobile新手练习区easy-apk

    [攻防世界]mobile新手练习区easy-apk easy-apk最佳Writeup由129师386旅独立团 • devi1提供 难度系数: 7.0 题目来源: 暂无 题目描述:无 题目场景: 暂无 ...

  7. 攻防世界 ——crypto

    目录 新手区部分题解: 1,easy_RSA 2,Normal_RSA 3, 幂数加密 4,easy_ECC 高手进阶区部分题题解 5, ENC 6,告诉你个秘密 7,Easy-one 8,说我作弊需 ...

  8. 攻防世界———MISC 高手区题解

    目录 1,base64stego 2,easycap 3,Avatar 4,What-is-this 5,签到题 6,Training-Stegano-1 7,Excaliflag 8,Get-the ...

  9. 攻防世界 web(二)

    这周接着刷攻防世界的web题( ̄︶ ̄)↗ 1.command_execution 看提示这题为命令执行漏洞(command_execution),关于命令执行漏洞,我前面有篇博客详细介绍了,大家不了解 ...

最新文章

  1. 更改windows域名
  2. table标签修改tr,td标签的行距
  3. Spring 教程06
  4. 在已交出句柄的QWidget上叠加透明形状
  5. 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波6 - 分段线性变换 - 比特平面分层
  6. 字体怎么安装到电脑上_文章还在使用电脑上的固定字体?这款字体软件超好用...
  7. 巫师3狂猎游戏风景Mac动态壁纸
  8. 因为难看的签名尴尬?Python爬虫制作艺术签名软件!
  9. 残疾人软件开发_残疾人应该使用Linux的6个理由
  10. springboot集成logback配置文件模板
  11. 使用拉普拉斯算子锐化图像
  12. 高等数学公式(latex)
  13. 60个经典电脑使用技巧
  14. 高速低功耗视觉理解挑战赛-PRCV2020竞赛网站发布
  15. 图像中的Exif信息及其处理
  16. 深度学习蓄势待发,即将“爆破”欧拉方程
  17. 小米官网html二级导航怎么做,小米路由器做二级路由器怎么设置?
  18. Oracle数据库(三)可插拔数据库使用
  19. 一线互联网大厂中高级Android面试真题收录!大厂直通车!
  20. 什么是职业测评?做职业测评有什么作用?

热门文章

  1. 什么硬件可以手游服务器,台湾服务器用来挂机手游要哪些硬件支持?
  2. 第24章 让唯美的雪花飘扬——三维粒子系统的实现
  3. 用三年都不会卡,Reno5系列恋恋青风,这方面体验确实顶
  4. 巴别塔圣经_承认巴别塔
  5. 榆熙教育有限公司:拼多多商家应该了解的常用推广方式
  6. 小志志和小峰峰的日常(SG函数)
  7. Verilog HDL——循环语句
  8. 页面加密代码,附效果演示
  9. NAS系列 硬件选择
  10. 美多商城项目发送短信优化