본문 바로가기

Reversing/CodeEngn

CodeEngn Basic 05



실행시 이런 창이 뜬다.


Username과 key값을 구하는게 문제이다





올리디버거에서 우클릭 - search for - all referenced text strings 를 통해

문자열을 찾아보자.





이부분이 시리얼 체크 부분으로 보인다


이동해보자.







뭔가 난해해보인다. 하지만 걱정하지 말자. 아직 5번인데 어려울 수 없다.

CALL 되는 함수는 F7 로 분석 해볼 수 있지만, 

어떤 역할을 하는 함수인지 대충 안다면 분석할 필요까지는 없다.



 Beggar Off!  거지 ㄲㅈ? 라는 String 이 두번 보인다.

두곳 모두 F2로 브레이크 포인트를 걸고 F8 로 진행해보자






이 주소에서 멈추게 되었다.

이때 바로 위줄의 PUSH 0x0 을 확인해보니

JUMP From 0040F39 이다. 


이때 0040FD39 는 분기점이라고 생각해볼 수 있다.

올라가서 분석해보자.




바로 위에 CALL로 함수를 호출한다. 어떤건지 살펴보자.

F7로 살펴보았다.




인자값으로 내가 입력한 'asdf' String 과 

"Registered User" 라는 String 을 받는다.


결정적으로 403B33 의 CMP EAX,EDX 는

직접적으로 두 String 을 비교한다.

그러므로 이 함수는 반드시 String 비교함수이고,

Username 은 "Registered User' 이다.



키값도 같은 방법으로 분석해서 구해주면 된다.





Key는 

GFX-754-IER-954 이다.







//


코드엔진 5번



'Reversing > CodeEngn' 카테고리의 다른 글

CodeEngn Basic 07  (0) 2018.04.12
CodeEngn Basic 06  (0) 2018.04.12
CodeEngn Basic 04  (0) 2018.04.01
CodeEngn Basic 03  (0) 2018.04.01
CodeEngn Basic 02  (0) 2018.04.01