728x90
반응형
SMALL
crackme3
crackme3번 먼저 프로그램을 돌려서 아무 값이나 입력해보았다.
"asdasd" 라는 값을 입력하였을 때 "Wrong word!!!" 라는 값이 나왔다.
이제 OllyDbg 에서 파일을 분석해보자
가장 먼저 Search for -> All intermodular calls 에서 GetDlgItemTextA 라는 수상한 부분을 발견하였다.
(물론 결과론적인 이야기지만 엄청난 삽질 끝에 발견한 부분이다.)\
해당 부분에 브레이크 걸고 실행해보았다.
마찬가지로 asdasd 라는 값을 넣고 F8을 연타해보았다.
현재 "EDX"에 내가 입력한 "asdasd" 라는 값이 들어가있었다.
계속
위의 "LEA EDX" 를 통해 내가입력한 값을 EDX 주소에 저장하였고,
"LEA EAX"를 통해 EAX 주소에 저장을 한다.
그럼 "EAX" 주소에는 어떤값이 저장되었는지 보자.
"EAX" 주소에는 "infinity"라는 값이 저장됐다.
이후 값을 비교하여 "JNZ" 즉, 값이 같지 않으면 "004011F9"(ASCII "Wrong word!!!"로 점프하는 코드이다.
따라서 앞서 "EAX" 주소값에 저장된 "infinit"라는 값을 넣어보았다.
수정 전 | 수정 후 |
그전의 "Wrongword!!!" 라는 단어와 달리 "maxmin" 이라는 단어가 나왔다.
이게 정답인가 싶어서 인터넷에 찾아보니 맞다네요.
해당 블로그에서는 다음 파일의 압축해제 암호라는데 저는 잘 모르겠습니다.
728x90
반응형
LIST
'시스템 보안 > 실습' 카테고리의 다른 글
[System] crackme4번 풀이 (0) | 2023.04.03 |
---|---|
[System] crackme2번 풀이 (0) | 2023.03.20 |
[System] crackme1번 풀이 (0) | 2023.03.18 |