본문 바로가기

C-Lab2

[C-LAB] EasyBOF 동아리 선배가 만드신 BOF문제를 풀어보자 우선 gdb를 이용해 무슨 함수가 있는지 봐보자 main함수가 있으니 main함수부터 봐보자 main함수를 보니 scanf를 이용해서 BOF를 일으켜 푸는 문제 인거 같다.먼저 코드를 위에서 부터 보면서 스택을 그려보자~ 스택이 이러한 구조로 되있는데 위 코드를 보면 ebp-0x4에 있는 값이 0xdeadbeef랑 같아야프로그램이 정상적으로 끝이 난다.그러기 위해서는0x68-0x4인100byte를 먼저 쉘코드와 더미로 채우고 0x4부터는 0xdeadbeef로 채우고SFP는 4byte니깐 아무문자로 4byte를 채우고RET에 buffer의 주소를 넣어서 쉘코드를 실행시키자 ---------------------------------------------------.. 2017. 10. 13.
[REVERSING] homework 핸드레이 태어나서 처음으로 핸드레이라는것을 해보았다. 우선 어셈블리 코드를 보기위해 gdb를 이용하였다. 이 코드안에 무슨 함수가 있는지 보기위해info func 사용 main함수가 있는것을 봤으니 main함수부터 들어가보자 main함수를 보니깐 menu와 success함수도 이용하는 것을 알 수 있다.코드의 흐름을 따라가면서 다른 함수들도 한번 보자 코드를 완벽하게 작성하기전에 실행되면 어떻게 되는 지 한번 실행해보자 근데 이 부분이 배열을 의미하는거 같은데 뒤에 주소가 무엇을 담고있는지 어제부터 잘 모르겠었다.. 그래서x/30wx 명령어를 이용해서 주소를 까보니 이렇게 나오는데 일일히 배열안에 넣어야 할 거 같다그럼 이제 c언어 코드로 작성해보자123456789101112131415161718192021222.. 2017. 9. 23.
반응형