inflearn 11

[프로토스타] stack5-2 (return to library)

stack5.c #include #include #include #include int main(int argc, char **argv) { char buffer[64]; gets(buffer); } 출처: http://liveoverflow.com/binary_hacking/protostar/stack5.html 1. 문제 해결 / 분석 1-1. lib32z1 다운로드 32bit 환경에서 해야한다. file stack5를 통해서 몇 비트 파일인지 알 수 있다. 1-2. gdb ./stack5 disas main b *main r 1-3. R2L bufferebpret -> system lib로 실행하게 하면 된다. 그러나ret (system 주소로 가는 ret)argument (쉘 코드가 들어가는 영역..

프로토스타 2019.01.15

[프로토스타] stack5-1 (스택 접근)

stack5.c #include #include #include #include int main(int argc, char **argv) { char buffer[64]; gets(buffer); } 1. 해결 1-1. stack5.c 저장 및 aslr 제거 aslr 제거 echo 0 | sudo tee /proc/sys/kernel/randomize_va_space가변적 스택을 고정하기 위함.고정하지 않으면 shell code의 위치가 변하므로 고정해주어야 한다. 출처: https://askubuntu.com/questions/318315/how-can-i-temporarily-disable-aslr-address-space-layout-randomization 1-2. msfvenom 사용 msfve..

프로토스타 2019.01.10