본문 바로가기

[Riversing]/[코드엔진] BASIC

[코드엔진] basic14

코드엔진 사이트에 들어가 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