Pwnable study 게시판에 첫 게시글이다.
study용 게시판을 새로 만든거인데 CTF Writeup 이랑 별차이 없을듯
64bit에 아무런 보호기법이 걸려있지 않다.
쉬운문제니 그냥 어셈으로 보자.
보아하니 gets 에서 BOF 가 발생하는것같다. 문제는 저 Smash me ... 문자열이다. 저 문자열과 우리 입력으로 sub_400320함수를 콜하게 된다.
저 함수가 뭐하는 함수인지 알기위해서 저함수에 bp를 걸고 plt got 연산후 got 에 들어있는 값을 보자
got에는 0x0043cd30 이라는 값이 있는것을 볼수있고, 이를 ida에서 확인하면
strstr함수인것 같다.
자 다시 어셈을 보자.
| buf (0x40) | sfp (0x8) | ret
의 스택구조를 가지고 있을것이지만 Smash me outside, how bout dAAAAAAAAAAA 문자열을 꼭 포함해야하므로
NOP(6) + Shellcode(27) + Smash me outside, how bout dAAAAAAAAAAA(39) 를 넣고 ret 를 buf 시작으로 돌리면 될것같다.
시작으로 돌리기 위한 가젯은 jmp rdi 를 쓸 생각이다
'Pwnable' 카테고리의 다른 글
<asis ctf> mary_morton (0) | 2017.09.11 |
---|---|
Pwnable.kr -dragon (1) | 2017.09.09 |
openCTF <tryo_heap> (0) | 2017.08.28 |
Babypwn, r0pbaby, casino (0) | 2017.08.28 |
[overthewire] leviathan (0) | 2017.08.18 |