문제
풀이
파일을 실행시켜보았다.
아무거나 입력을 해보아도 버튼이 활성화되지 않는다.
ollydbg로 파일을 열어보았다.
ollydbg에서 문자열을 찾아보았다.
"Well done!" 이라는 문자열이 보인다.
일단 저 문자열을 따라가 보았다.
MSVBVM60.__vba
이런 식의 문자들이 보인다.
이러한 정보들로 보아하니 비주얼 베이직으로 프로그래밍된 것을 알 수 있다.
(peid를 이용하면 바로 알 수 있는 정보이다.)
비주얼 베이직으로 쓰인 함수들이다.
이는 우클릭 -> search for ->all intermodular calls 를 통해 볼 수 있다.
보다보면 StrCMP 라는 부분이 있는데 이 곳에서 비교해준다는 것을 예측할 수 있다.
(시리얼 값을 입력받을 때, 그 값이 시리얼인지 아닌지 비교해보려면 일단 암호와 입력값을 비교해봐야 할 것이다.)
이 곳에 브레이크 포인트를 걸고 다시 실행한 뒤 아무 문자나 입력하였다.
ECX에 유니코드 2181600 이라는 숫자가 보인다.
이 숫자와 입력받은 값을 비교하는 것 같다.
참고
'Wargame & CTF > abex' crackme' 카테고리의 다른 글
[abex' crackme] 5번 문제 풀이 (0) | 2020.09.26 |
---|---|
[abex' crackme] 3번 문제 풀이 (0) | 2020.09.26 |
[abex' crackme] 2번 문제 풀이 (1) | 2020.09.20 |
[abex' crackme] 1번 문제 풀이 (1) | 2020.09.19 |