문제는 위와 같이 주어졌고, 분석의 용이함을 위해 VM에 Windows XP 에서 진행하였다.
디버깅을 진행할라는데 두줄만에 프로그램이 실행되 버렸다...
일단 대뜸없이 코드를 입력하라고 해서 코드를 입력하였더니 당연지사 실패..
그렇다면 답은 문자열로 찾기! 다!
Ctrl+F2로 디버깅 재시작후 문자열들을 확인해 보자.
보면 당연히 키값을 의심되는 부분이 보일 것이다.
저부분을 더블 클릭해보자.
유니코드로 2G83G35s2를 푸쉬하는 부분이 보이고,
밑에는 vbaStrCmp를 호출하는 부분이 보인다.
즉 vbaStrCmp의 인자로 사용되는 듯하다.
F8로 넘어가서 실행후 Regcode로 123을 입력결과 스택창에서
2G83G35s2와 123이 들어간 것을 볼 수 있다.
마저 실행하면
당연 실패..
그럼 저 2G83G35s2가 Regcode라는 것을 가정하고 한번 입력해보자
패쓰가 되었다!!
즉 Regcode는 2G83G35s2라는 것을 알았고
문제에서 주어진 비주얼 스튜디오에서 스트링 비교함수 이름을 적어주면되니,,
문제 클리어
'Reversing > CodeEngn Basic RCE' 카테고리의 다른 글
| CodeEngn Basic RCE 06 풀이 (0) | 2016.10.13 |
|---|---|
| CodeEngn Basic RCE 05 풀이 (0) | 2016.10.13 |
| CodeEngn Basic RCE 04 풀이 (0) | 2016.10.13 |
| CodeEngn Basic RCE 02 풀이 (0) | 2016.10.11 |
| CodeEngn Basic RCE 01 풀이 (0) | 2016.10.11 |