HITCON 2017 babyfirst-revenge(命令执行绕过二)

  • A+
所属分类:安全博客

昨天不知道怎么了忘记发出去了,和今天的合起来一起发23333333

今天国赛,体验了一把被二进制大手子带飞的感觉。贼爽。

web1太简单,web2太难,web+pwn我就没做出来过。

然后国赛也成为二进制的舞台了(就好像什么比赛不是二进制的天下一样。

所以我这只狗又来学web了。接上昨天的,我想本地搭一个,但是想了好久,到底怎么弄,我想看看实现好的环境。

搜一波发现有人用docker搭过了。但是我是win10企业版,原来的docker tool出问题了,怎么也弄不好。只有在ubantu里面再装一个了。

ubantu安装docker教程:https://blog.csdn.net/rickey17/article/details/72809384

然后学一波docker,首先你需要一个Dockerfile,可以自己写也可以用别人的。

搭建
  • 进入Dockerfile所在的目录
  • 运行命令 docker build -t '自定义镜像名称' . (请注意最后的点不要少)
  • 运行命令 docker images 查看是否已经成功构建景象
  • 运行命令 docker run -id --name '自定义容器名称' -m '要分配给此容器的内存上限' --network='要分配给此容器的网络' -p '容器的外部端口':80 '自定义镜像名称' /run.sh
维护

进入容器 运行指令 docker exec -it '容器名称' /bin/bash

安装docker的过程比较漫长,期间学一波linux。

因为这个题目限制了每次输入命令的长度,所以需要linux里面的小技巧:利用来实现突破一次输入命令的长度。

因为可以实现终端换行。

HITCON 2017 babyfirst-revenge(命令执行绕过二)

可以看到:我第一次输入的是  l   按下回车之后出现>然后我们再输入s 按下回车会执行ls命令。

还有一点使用两个字符就能创建一个文件:>z

就在目录下创建了z文件。

那么思路就清晰了,不断的创建文件并且用结尾,然后拼接,最后再执行,就能getshell了。

mmp题目环境终于搭好了,又让我学了一波docker的基本操作,进服务器看了一下,大概是有一个sandbox的目录,然后flag在服务器里面,需要自己找。主要利用命令绕过限制getshell就行。

md又这么晚了,今天WEB狗又是没有活路的一天。国赛体验极差。

希望明天红帽杯能好受一点。

早日做出这题。开始下一题的修炼。加油!

相关推荐: 堆的unlink利用

在刷Buuctf时看了一下关于pwn的堆部分题,发现一般题型都是有套路的,所以整理下堆题中常用的技术,本文介绍unlink的原理与利用。 unlink介绍 产生原因 我们知道link有链的意思,那unlink同理有解链的意思,unlink实际上就是在free堆…

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: