728x90
파일을 실행시키면 위처럼 진행된다. 해당 파일을 ida로 열어보면
main함수이다.
1번 add_note 함수이다.
show note에서 format string bug 취약점이 의심된다.
Show_note &ptr에서 fsb를 발생시킬 수 있는데 이 &ptr은 buf add_note에서 볼 수 있다.
add_note함수에서 입력값이 candidate2함수에 들어가면
v2 즉 content에 입력한 값이 &ptr로 들어간다.
add_note에 %x를 30개 저장하고 show_note를 실행하면 스택의 내용들이 나온다.
위내용을 보기위해 gdb로 열어봤다.
스택 영역을 잘 분석하면 %x로 14번째에 0xffffd048이 박혀있고, 0xffffd048은 22번째를 가리키고 있다. 이를 통해서 쉘을 얻을 수 있다.
14번째에 printf의 got를 입력하고 22번째에 shell 주소를 넣어주면 된다.
14번째의 printf got -> 0x0804b010
22번째 system("/bin/sh") -> 0x8048a37
쉘획득
system("/bin/sh")이 바이너리 안에 존재해서 쉽게 풀 수 있었다.
728x90
'CTF_writeup > 2018' 카테고리의 다른 글
PCTF_2013_ropasaurusrex (0) | 2018.12.22 |
---|---|
MMA-CTF-2-greeting (0) | 2018.12.22 |
Trustealth CTF easy (0) | 2018.12.22 |
ISITDTU_CTF_dead_note_lv1 (0) | 2018.12.22 |
ISITDTU CTF_xoxopwn (0) | 2018.12.22 |