Wargame/SuNiNaTaS
SuNiNaTaS binary11번
공부하자~~
2017. 5. 22. 16:36
문제 파일을 다운받고 실행 시키면 메시지 창이 나온다.
우선 아무 값이나 입력하고 버튼을 눌러보면 반응이 없다. 정확한 값을 입력해야지 반응이 있을것으로 보인다.
올리디버거로 열어서 참조 문자열들을 보니 Congratulation!이라는 문자열이 있다.
이 주변에서 호출되는 함수들에 BP를 걸고 그 주위를 살펴보자.
올리에서 실행시키고 12345를 입력하고 BP에서 멈춘다.
0045034C에서 EBP-4에는 012621D4라는 주소가 들어있는데, 012621D4에는 사용자가 입력한 값이 들어있다. 이 값을 EAX에 MOV한다는 것이다.
0045034F에서 EBX+330는 012621BC라는 주소가 들어있는데, 012621BC에는 입력갑과 비교할 값이 들어있다. 이 값을 EDX에 MOV한다는 것이다.
레지스터는 아래와 같다.
그리고 아래 함수를 호출하면 JMP가 활성화 되지 않고 진행되어서 인증키가 나온다.