dreamhack/pwn

[ Dreamhack ] Zeroshot

;lkjfdsa 2022. 11. 27. 21:46
반응형

https://dreamhack.io/wargame/challenges/426/?writeup_id=8822 

 

ZeroShot

이 문제는 서버에서 작동하고 있는 서비스(ZeroShotV2)의 바이너리와 소스 코드가 주어집니다. 취약점을 익스플로잇해 셸을 획득한 후, “flag” 파일을 읽으세요. “flag” 파일의 내용을 워게임 사

dreamhack.io

 

문제를 풀며 배운점

- 여러번 aaw가 가능하지만 %d를 사용해서만 입력이 간능한 경우 최대 0xffffffff까지만 입력이 가능하기 때문에

원하는 주소가 4바이트보다 크다면 하위 4바이트 상위 4바이트 나눠서 입력을 주면 된다.

 

- 함수 내부에서 movaps가 실행될 때 rsp가 0x10상태로 정렬되어야 한다.

rsp를 정렬시키려면 해당 함수에서 got overwrite로 call하는 부분을 실행시키고 system함수로 뛰면 된다.

call을 하면 ret주소를 스택 최상단에 쌓기 때문에 rsp값이 8바이트 작아진다.

참고 : https://c0wb3ll.tistory.com/entry/ret2libc-x64

반응형