Wargame & CTF/Pwnable
[HackCTF] 내 버퍼가 흘러넘친다!!! (150) write-up
m3r0n4
2020. 7. 21. 16:35
4번째 문제인 버퍼가 흘러넘친다는 문제이다.
먼저 파일을 받아 어떤 보호기법이 적용되어있는지 보도록 하자.
오잉? 아무 보호기법도 적용되어 있지 않다. 그러면 쉘코드를 사용할 수 있다는 말인데...
일단 IDA로 까보도록 하자.
read 함수로 name변수에 값을 받아오고, gets 함수로 v4에 인풋값을 받아오는 것을 알 수 있다. name의 영역을 먼저 살펴보면,
보이는가? name은 bss영역에 존재하는 것을 알 수 있다. 그러면 shellcode를 name에 넣어 주고, 밑의 인풋값에서 버퍼 오버플로우를 한 뒤 name의 영역에 있는 쉘코드를 불러와주면 될 것이라는 것을 알 수 있다. 익스플로잇 코드는 아래와 같다.
실행해 보면,
성공적으로 익스플로잇이 된 것을 알 수 있다.