CodeEngn Reversing Advance_Level02


프로그램 실행 화면이다. 비밀번호를 알아내는 것이 문제이다. 잘못된 비밀번호를 입력하면 바로 종료된다.

PEiD 조회 결과에는 딱히 특별한 것은 없어 보인다.

텍스트 찾기로 의미 있는 문자열에 bp를 걸었다.

메시지를 출력한 뒤 문자열을 입력 받는 함수가 호출된다.

입력 값을 받는 코드 조금 아래 의미 있어 보이는 코드가 있지만 알고 보니 함정이었다. 단순히 문자열을 여기저기 복사한다.

조금 더 진행하면 이 함수가 호출되고, 이 함수가 호출되면 프로그램이 종료된다. 처음에는 exit함수가 아닐까 했지만, 이 함수가 핵심 로직이다.
함수로 들어가 보았다.

문자열 비교 함수를 쓰지 않고 직접 한 글자씩 비교한다. 비밀번호는 CRAAACKED! 이다.

이렇게 메시지 박스가 뜬다.

메시지 박스도 그냥 띄우지 않고, 문자열을 한 글자씩 만들어서 띄운다.