코드엔진 사이트에 들어가 basic14 문제를 다운로드 받고 압축을 푼다(비밀번호 : codeengn)
Name 과 Serial 넘버를 입력하는 프로그램 일 것 같다.
Name은 CodeEngn으로 주어졌고 Serial 넘버만 구하면 된다.
일단 Exeinfo Pe로 분석 ㄱㄱ
UPX 패킹이 되어있다.
이전 문제들에서 많이 다뤄봤으므로 바로 언패킹을 해준다.
프로그램을 실행해보자.
예상했던 것 처럼 name 과 serial 번호를 요구한다.
일단 임의로 아무 숫자나 넣어봤더니 역시나 오류가 뜬다.
Ollydbg 로 정확한 분석 ㄱㄱ
F8로 진행을 하다가 name 과 serial 번호를 위에서 한 것처럼 CodeEngn, 1234 를 입력했다.
내가 입력한 1234 는 EAX에 저장이 되었고,
EAX 와 ESI 를 비교하는 분기점이 나타난다. ESI 값은 129A1 이다.
그리고 1234의 HEX 값은 4D2 이다. 느낌이 온다.
129A1의 10진수 값이 프로그램의 Serial 넘버일것이다. 확인해보자.
129A1 의 10진수 값은 76193 이고 프로그램에 입력해보니 깔끔하게 성공했다.
'[Riversing] > [코드엔진] BASIC' 카테고리의 다른 글
[코드엔진] basic16 (0) | 2020.04.04 |
---|---|
[코드엔진] basic15 (0) | 2020.04.04 |
[코드엔진] basic13 (0) | 2020.04.01 |
[코드엔진] basic12 (0) | 2020.03.31 |
[코드엔진] basic11 (0) | 2020.03.31 |