CodeEngn Reversing Advance_Level05

프로그램을 실행하면 작은 창이 뜬다.

아무거나 쓴 뒤 OK를 누르면 이런 창이 뜬다.

원래 있던 창에는 입력했던 값이 사라지고 Mal Cracker!!!라는 문자열이 써 진다. 이 문자열은 더이상 수정이 불가능하다. 입력란에 추가로 입력이 되지 않는다.

PEiD로 살펴본 결과 visual basic 프로그램인 것을 알았다.

함수 찾기로 문자열을 비교하는 함수를 찾아보았다.

vbaStrCmp 함수는 EAX와 ECX에 있던 값을 인자로 받는다.

내가 입력한 값은 123이다. ECX에 들어있는 677345가 수상하다.

677345를 입력하면 성공 메시지가 뜬다.

덤으로 비교 결과에 따라 분기하는 코드이다. JE에서 점프하지 않으면 성공, 점프하면 실패 메시지를 띄운다.


tags: writeup, reversing, pe file, windows, x86asm, visual basic