728x90
728x90
728x90

파일 링크: https://tuts4you.com/e107_plugins/download/download.php?list.17

 

Downloads / Lenas Reversing for Newbies - Tuts 4 You

 

tuts4you.com

Tutorials Index: 09. Explaining the Visual Basic concept, introduction to SmartCheck and configuration

사용도구: 올리디버거 2.01, Detect It Easy 2.04

 

Lena's Reversing for Newbie 09(이하 원본파일) 분석해보자.

 

 

[사진 1]

원본파일을 실행하면 설치를 진행한다.

 

 

[사진 2]
[사진 3]
[사진 4]
[사진 5]
[사진 6]

설치는 어렵지 않다. 설치를 하면 위와 같은 파일, 폴더들이 생성된다.

 

 

[사진 7]

프로그램을 실행하면 위와 같이 key를 입력하라고 나온다.

 

 

[사진 8]

등록을 실패하면 "Error Registration Key" 문자열을 출력한다. 여기서 별도로 이름 등과 같은 값을 추가로 입력하지 않고 있다. 즉, key 값은 특정한 값으로 하드코딩되어 있을 수 있다.

 

 

[사진 9]

Detect It Easy 도구로 프로그램을 살펴보면 Visual Basic 언어로 만들어진 것을 확인할 수 있다.

 

 

[사진 10]

위와 같이 Visual Basic 언어로 컴파일된 것을 확인할 수 있다.

 

 

[사진 11]

code 섹션에서 우클릭 - Search for - Name 기능을 클릭하면 실행 파일에서 사용하는 모든 모듈을 확인할 수 있다. Visual Basic에서 문자열 비교 함수는 다음과 같다.

1. vbaBarTstEq

2. vbaVarTstNe

3. vbaVarCmpEq

4. vbaStrCmp

5. vbAstrComp

6. vbaStrCompVar

 

위 함수들이 쓰이는 곳을 모두 확인해야 한다.

 

 

[사진 12]

첫 번째로 vbaVarTstEq 함수가 사용되는 곳부터 디버깅해보자.

 

[사진 13]

디버깅을 하다보면 위와 같이 "oeiu-564-oqei-97" 문자열을 확인할 수 있다. 시리얼 같이 생겨서 입력을 해봤다.

 

 

[사진 14]

성공했다. key 값은 하드코딩되어 있었다.

728x90
728x90

+ Recent posts