这个题目应该是新手营里最简单的题目了,确实是运行就可以拿到shell,可能对于我这种小白来说,一眼看过去有点懵,但是肯定先得拖到IDA里F5下,康康里面到底是个啥:
果真反编译以后,确实比较简单,没有输入,所以不涉及buf之类的栈溢出,虽然这个题目不是在最前面,但是确实是最简单的,第二行代码里说了,程序会执行system里的/bin/sh,因此有理由相信shell就在这里面,那么如何运行呢?
在Ubuntu里,将下载的附件运行一下(这里推荐先重命名下,方便操作)
运行之后确实显示了puts里的话,那题目说的运行一下到底是个什么意思呢?根据前几个题目的套路,我终于明白了,应该是得写脚本,可以一句一句的写并运行,或者写出来保存文件,当然这里比较简单,不用payload,所以就三句话:
这里要先输入python3,进入编辑界面,然后依次输入:
from pwn import*
io = remote("点击场景给的ip地址",给的端口号)
io = interactive()
最后与上上图一样,使用 ls 一下,出现了flag,然后使用cat flag 运行一下就可以得到flag啦