攻防世界 level0 WriteUp
WriteUp
题目信息
来源:攻防世界
名称:level0
分类:Pwn
描述:菜鸡了解了什么是溢出,他相信自己能得到shell
解题思路
首先使用DIE对文件进行查壳,发现这是一个无壳的64位ELF文件。

于是使用64位IDA对文件进行反汇编,得到如下伪代码;

深入查看vulnerable_function函数,得到如下伪代码:

发现buf长度为128,而read允许读入的数据长度为512,由此可以考虑栈溢出漏洞。
继续查看“/bin/sh”的地址:

查看该指令的交叉引用

跳转到对应位置:

得到system("/bin/sh")指令地址:


现在所有要素都集齐了,可以编写payload了。
为文件赋予可执行权限:

靶机地址:

最终payload如下:

结果如下:

使用工具
DIE
IDA
Kali
Pwntools(Python插件,请自行下载)
工具链接: https://pan.baidu.com/s/1dzK8gcFjYEvnj_aA0UjBeQ?pwd=ry2d 提取码: ry2d
Flag
cyberpeace{8b5f97d7741734d16a5c0c2b88695864}
总结
通过本次题目学习到:
Payload编写
栈溢出

浙公网安备 33010602011771号