반응형

Security&Hacking/리버싱 46

Lena Revesing - tutorial 17

Lena Reversing tutorial 17 이번 단계는 기본적인 keygen 에 대해 알아보는 단계이다. 프로그램을 실행해준다. About 버튼을 누르면 다음과 같이 나온다. 아무 값이나 넣고 Check 버튼을 누르면 다음과 같이 나온다. 올바른 key 값을 찾아주도록 한다. Ollydbg로 열어준다. 사용자의 입력값을 받고 있기 때문에 GetDlgItemTextA, GetWindowTextA 의 함수가 쓰일것으로 예상된다. 이 함수에 breakpoint를 걸고 확인해준다. 여기서 commandbar 플러그인을 사용해 주도록 한다. 하단 Commandbar에 다음과 같이 입력하고 breakpoint를 걸어준다. breakpoint를 확인해보면 다음과 같이 걸린 것을 확인할 수 있다. F9를 눌러 실..

Lena Reversing - tutorial 16_2

Lena Reversing tutorial 16_2 16단계의 두번째 파일이다. 프로그램을 실행해보면 다음과 같이 나온다. 30일만 이용 가능하다는 창이 가장 먼저 반긴다. 프로그램이 실행되고 Help -> About GIF Movie Gear를 누르면 다음과 같이 나온다. 역시 30일 남았다는 문구가 보인다. 종료버튼을 눌러도 똑같은 창이 뜬다. 다른점은 Order 버튼만 있다가 3초정도 후 OK 버튼이 생성된다. Ollydbg로 열어준다. F9를 눌러 프로그램을 실행시키고 종료시 나오는 nag 창이 뜨도록 종료해준다. nag 창이 뜨면 F12를 눌러 일시정지 시키고 상단의 K 버튼을 눌러 Call stack을 살펴본다. DialogBoxParamA 함수를 실행하는 곳이 nag 창을 실행하는 곳으로 보..

Lena Reversing - tutorial 16_1

Lena Reversing tutorial 16_1 이번 단계는 두개의 프로그램이 있다 하나씩 나누어 진행하도록 한다. 먼저 진행할 프로그램은 Urlegal 이라는 프로그램이다. 실행하보면 다음과 같이 나온다. 프로그램 자체는 특별한게 보이지 않는다. 종료시키면 다음과 같은 nag 창이 뜬다. 그냥 종료하기 위해 X버튼을 누르면 Register와 관련된 글이 뜨고 종료되지 않는다. I Will Register Soon 버튼을 눌러야지만 종료가 된다. 프로그램 상단의 File -> Register 버튼을 누르면 다음과 같이 나온다. 아무값이나 넣고 Validate My Codes 버튼을 누르면 다음과 같이 오류창이 뜬다. 종료시 나오는 창을 없애고 File -> Register 버튼을 비활성화 시키도록 한..

Lena Reversing - tutorial 15

Lena Reversing tutorial 15 이번 단계 역시 이전 단계와 마찬가지로 인라인패치를 이용하는 단계이다. 프로그램을 실행해보면 다음과 같이 나온다. starting nag 창이며 이것을 지우라고 하고 있다. 실행된 프로그램이다. 동작은 register 와 종료 밖에 없다. 종료하면 closing nag이며 이것도 지우라고 나온다. 프로그램에서 register 버튼을 누르면 아무것도 나오지 않지만 종료했을때 closing nag가 나오지 않는다. 흐름을 분석하며 이 두 nag 창이 나오지 않도록 바꾸어준다. Ollydbg로 열어준다. F9를 눌러 실행시키고 첫번째 nag창이 나온순간 F12를 눌러 일시정지 시킨다. 다음 상단의 K 버튼 또는 Alt + K 를 눌러 Call stack을 살펴 ..

Lena Reversing - tutorial 14

Lena Reversing tutorial 14 이번 튜토리얼의 목적은 인라인패치를 하는 것이다. 프로그램을 실행 해 보면 다음과 같이 나온다. Enter Reg.Code 를 눌러주면 다음과 같이 register 하는 창이 뜬다. 아무 값이나 넣어서 Ok 버튼을 누르면 다음과 같이 오류 창이 뜬다. Ollydbg로 프로그램을 열어준다. Control + n을 눌러 module 목록을 열어준다. 프로그램이 30일 제약이 걸려있기 때문에 시간과 관련된 API를 사용할 것으로 추정된다. KillTimer API를 찾는다. set breakpoint on every reference를 눌러서 breakpoint를 걸어준다. 48개의 breakpoint가 걸린다. 실행시키면 break가 계속 걸리지만 프로그램이 ..

Lena Reversing - tutorial 13

Lena Reversing tutorial 13 이번 단계는 Window API를 활용한 디버깅을 하는 것이 목적이다. 이번 프로그램도 이전과 같이 register 하는 것이 들어가 있는데 이처럼 프로그램 등록과 관련된 API들을 우선 살펴본다. 1. DialogBoxes -DialogBoxParamA -GetDlgItem -GetDlgItemInt -GetDlgItemTextA -GetDlgItemTextA -GetWindowTextA -GetWindowWord 2. MessageBoxes -MessageBeep -MessageBoxA -MessageBoxExA -SendMessageA -SendDlgItemMessageA 3. Registry Access -RegCreateKeyA -RegDelete..

Lena Reversing - tutorial 12

Lena Reversing tutorial 12 이번 단계는 Teksched 프로그램을 여러군데의 패치를 통해서 크랙하는 단계이다. 그럼 프로그램을 실행한다. 맨처음 실행하면 나오는 창이다. 하단에 30일이 남았다는 문구가 보인다. 프로그램 실행 화면이다. 상단에 타이틀 끝에 unregistered 라는 문구가 보인다. help 탭의 about을 눌러준다. Unregistered Version이 보인다. Use Reg Key를 눌러준다. Register 하는 창이 보인다. 아무 값이나 넣어서 등록을 해준다. 역시나 오류창이 뜬다. 'Vg' 라는 값이 뜨는데 Key 값을 바꾸어 보니 또 다른 값이 나온다. Key 값을 통해 변환을 하는 것으로 보인다. Ollydbg로 프로그램을 열어준다. Search fo..

Lena Reversing - tutorial 11

Lena Reversing tutorial 11 이번 단계에서는 Flash Jigsaw Producer 프로그램을 크랙하도록 한다. 우선 주어진 설치 파일을 실행하여 설치를 진행한다. 프로그램을 실행하면 다음과 같이 나온다. 프로그램 실행 화면이다. 상단의 Desk 탭의 select를 누르면 다음과 같이 나온다. 프로그램 오른쪽 하단에 있는 Register 버튼을 누르면 다음과 같이 나온다. password 값을 아무 값이나 넣어서 OK 버튼을 눌러주었다. Error 창이 뜨는 것을 볼 수 있다. Ollydbg로 열어 크랙해보자. 추가로 레나 강의에는 프로그램 타이틀에 프로그램 이름과 함께 unregistered 문구가 써있다고 한다. 이번 단계는 현재 프로그램 타이틀에 프로그램 이름만 보이고 있지만 이..

Lena Reversing - tutorial 10_3

Lena Reversing tutorial 10_3 세번째 프로그램인 ReverseMe2 프로그램이다. 프로그램을 실행시키면 다음과 같이 나온다. Register 버튼이 활성화 되어있지 않다. User Name에 맞는 숫자를 넣어주면 활성화 되는 것으로 보인다. vb-decompiler로 열어준다. Text2 부분은 숫자 코드가 입력되는 부분이다. 숫자가 하나씩 입력 될 때마다 확인 하는 것으로 보인다. 405090을 Ollydbg에서 찾아간다. breakpoint를 걸어주었다. F9를 눌러 실행 시키고 user name 에는 abcdef, 숫자를 1 입력한 순간 break에 걸렸다. 숫자를 입력할 때마다 걸리는 것이 확인 되었다. F8을 눌러가며 살펴본다. 이전 프로그램에서도 보았던 아스키 값을 구하는..

Lena Reversing - tutorial 10_2

Lena Reversing tutorial 10_2 이번엔 CConvert 프로그램을 가지고 진행한다. 똑같이 vb-decompiler로 열어준다. Regieter 하는 창으로 간다. Validate 버튼을 눌러보면 이름이 cmdValidate로 되어있다. 우측에 cmdValidate_Click을 찾아보면 주소가 409C70이다. Ollydbg로 열어준다. 찾은 주소에 breakpoint를 걸고 진행시켰다. validate 버튼을 누르면 break가 걸린다. register 하는 창에서 User name은 abcdefg, code는 1234로 등록하였다. F8을 눌러가며 진행해준다. 가장먼저 vbaLenBstr 함수가 나온다. 반환값으로 EAX에는 7이 입력된다. 계속 진행하면 rtcMidCharVar ..

반응형