XCTF-攻防世界-pwn-新手村-level2
XCTF-攻防世界-level2
题目链接:
https://adworld.xctf.org.cn/task/answer?type=pwn&number=2&grade=0&id=5055&page=1
题目给出了ROP的提示,去搜搜
https://bbs.ichunqiu.com/thread-42530-1-1.html?from=csdn
下载附件,拖进IDA,查看伪代码
查看main函数,有system调用以及一个vulnerable_function()的调用。
查看vulnerable_function(),发现payload构造点,0x88字符长度的buf,返回值却读了0x100字符长度的内存
继续查看代码,发现/bin/sh字符串
exp
注意32位程序,调用system函数之后,紧接着的是函数返回地址,此时需要使用4字节垃圾字符进行填充,才能达到新的堆栈的栈顶位置,可以参考描述
https://www.jianshu.com/p/695ca7a2cd5f
最终