# 【PWN】攻防世界题目:get_shell > 零零散散的自学了一些pwn,今天来试着做一下题目 [TOC] ## 开始 他说运行就可以获取到shell于是就选了,貌似一个简单的题目  ## 查看内容 下载文件后拖到windows虚拟机中,看看这是个什么文件 下图看上去是一个ELF文件,是一个linux下的可执行文件  ## 尝试分析 于是直接在linux中跑一下,发现直接回来一个shell?  在IDA中打开看看,跳转main函数看看,发现打印一条消息 "OK,this time we will get a shell.",然后将字符串 "/bin/sh" 的地址移动到 edi 寄存器,调用 system 函数,执行 edi 寄存器中指定的命令。启动了一个新的shell。  ## 获取Flag 看上去很简答,但flag呢?我忽然想到,这是一道pwn题目,我回到做题页面,发现果然可以启动一个场景  启动之后尝试用nc连接试试看,直接就回弹一个shell来了,里面有个flag文件,cat一下试试看,获取了一个`cyberpeace{b31b0e8c6b9070d67216127baf86ed62}`  发现正确了,果然很简单,貌似都没有涉及到堆栈溢出。  到此就结束了,希望这题是个学习pwn一个良好的开始。