Security&Hacking/리버싱

Lena Reversing - tutorial 09

Dior2ky 2020. 3. 4. 18:41
반응형

Lena Reversing tutorial 09

이번 튜토리얼의 목적은 Visual basic에 대해 이해하고 

프로그램의 시리얼 넘버를 찾는 것이 목적이다. 

 

프로그램을 PEID 툴로 열어준다.

Microsoft Visual Basic을 통해 만들어진 프로그램으로 나온다. 

PEID 툴을 사용하면 해당 프로그램이 어떻게 만들어졌는지,

패킹에 대해서는 나중에 나오겠지만 패킹이 이루어졌는지에 대한 정보를 쉽게 알 수 있다.

 

프로그램을 실행시키면 다음과 같이 나온다. 

register 하라는 창이 나온다. 아무 값이나 넣어서 진행해보면 error가 뜬다. 

Ollydbg로 열어준다. 

 

시리얼 넘버를 비교하여 확인하고 있기 때문에 문자열을 비교하는 함수가 있을 것으로 판단된다. 

Visual basic에는 다음과 같은 문자열 비교 함수들이 있다.

vbaVarTstEq
vbaVarTstNe
vbaVarCmpEq
vbaStrCmp
vbAStrComp
vbaStrCompVar

나오지 않으면 일일히 확인해야한다. 하지만 나오는 걸로 가장 먼저 진행한다.... ㅎ

Search for -> Name (label) in current module을 눌러 나오는 함수들 중 가장 먼저 vbaVarTstEq를 찾자.

오른쪽 마우스를 눌러 Set breakpoint on every reference를 눌러준다.

그러면 ollydbg 하단에 88개의 breakpoint가 설정 되었다고 나온다. 

그럼 이제 프로그램을 진행시킨다. F9를 눌러 breakpoint가 걸릴때까지 진행한다.

breakpoint에 멈췄다면 이제 F8을 눌러가며 진행한다. 

진행하다보면 프로그램의 이름과 함께 누가봐도 시리얼 넘버처럼 보이는 문자열이 보이게 된다. 

그럼 이 시리얼 넘버로 Register 해본다. 

위의 B 버튼을 누르면 breakpoint들이 나온다.

오른쪽 마우스를 눌러 Disable all을 눌러주면 breakpoint가 동작하지 않도록 할 수 있다.

이제 F9를 눌러 프로그램을 실행시킨다.

oeiu-564-oqei-97을 시리얼 넘버로 입력시킨다.

성공적으로 등록되었다. 

끝.

반응형

'Security&Hacking > 리버싱' 카테고리의 다른 글

Lena Reversing - tutorial 10_2  (0) 2020.03.04
Lena Reversing - tutorial 10_1  (0) 2020.03.04
Lena Reversing - tutorial 08  (0) 2020.03.04
Lena Reversing - tutorial 07  (0) 2020.03.04
Lena Reversing - tutorial 06  (0) 2020.03.02