728x90

이 문제는 pwn중에서 가장 많이 풀린 문제이다. 일단 무슨 파일인지 알아보자.

 

 

보면 또 64비트 ELF파일이다. 그럼 실행시켜보자.

 

 

배스킨라빈스 31게임을 한다. 인터넷에서 필승법을 찾아서 시도했지만 쟤가 반칙을 쓰면서 졌다. 그럼 어쩔수 없이 디버깅을 해야겠다.

 

 

만약 이긴다면 저런 문구를 볼수있다. 일단 힌트가 ROP라고 한다.

 

 

일단 checksec을 통해 보호기법을 확인해보자. NX가 걸려있는걸 봐서는 확실히 힌트가 제대로 된것임을 대충 짐작할 수 있다.

 

 

일단 컴퓨터의 입장에서 your turn에 내가 입력을 넣어준다. 그러니 여기서 분명 오류가 나올것이라고 생각하고 보았다. 이 문제에서는 함수 이름을 바꾸지 않아서 금방 찾을 수 있었다. read함수를 보면 숫자를 입력받는데 문자열로 받고 있다. 그래서 오버플로우가 발생한다.

 

 

 

 

 

 

 

 

 

 

 

'ctf write-up > Codegate CTF 2018' 카테고리의 다른 글

Miro - crypto  (0) 2018.02.09
RedVelvet - reversing  (0) 2018.02.09

+ Recent posts