Etc/Tool

Ollydbg 설정 및 간단한 기능 소개

ollydbg를 다운로드 하시려면 여기를 클릭하세요.


ollydbg 이 글은 1.10 기준입니다.


1. 링크를 통하여 다운로드 받았으면 BOOKMARK.DLL과 Cmdline.dll 을 Plugin 폴더에 넣습니다.



2. 이제 다운 받은 올리디버거를 관리자 권한으로 실행 시킵니다. API의 기능을 볼 수 있도록 도와주는 help 기능이 있는데, 사이트를 통하여 다운로드를 받을 수 있습니다. 파일을 업로드 하려 했는데 용량 초과로 안되네요.

사이트는 여기를 클릭하세요.


사이트에 들어가시면 아래에 WinApiHelp 0.1 를 받아서 추가하시면 됩니다.


추가하는 방법은 Help에서 Select API help file 을 클릭하시면 아래와 같은 화면이 나오는데 다운 받으신 help 파일을 선택하시면 됩니다.



3. 디버깅 옵션을 하나 변경해야하는데 Options에서 Debugging options를 선택한 뒤 Event 탭에서 Entry point of main module을 선택하시면 됩니다.



나머지는 자신의 입맛에 따라 설정하시길...


4. 마지막은 UDD와 Plugin 폴더를 설정해줘야합니다. 이 폴더들은 올리디버거 폴더 안에 있는 각각의 폴더를 선택하시면 됩니다.


이러면 설정은 완료가 됩니다.



이제 설정도 했으니 올리디버거 기능을 간단히 소개하겠습니다.


덤프 창에는 힙이나 File Map 또는 Text 영역의 값들이 올 수 있고 해당 주소 부분을 16진수로 보여준다.



올리디버거는 기본적으로 파일을 열어서 분석을 할 수 있지만 실행 되어있는 상태에서도 잡아 분석이 가능하다. 그 기능이 Attach 기능인데 file에 attach 를 보면 실행되고 있는 프로세스들을 확인할 수 있다. 그 중에서 자신이 분석하고 싶은 것을 Attach 하여 분석을 하면 된다.


 View에는 여러가지를 보는 기능들이 들어 있다. 메모리는 현재 메모리 상태, Call Stack은 어떤 함수가 호출 되어 있는 지를 확인 할 수있다. 각 기능들이 어떤 것인지는 각자가 해보기를 권한다.



Debug에 나오는 키들은 웬만하면 암기하여 사용하는 것을 추천한다. 여기서 특히 자주 사용하는 키는 아래와 같다.


 Run

 F9 

 프로그램을 실행 

 Restart

 Ctrl+F2

 프로그램을 재실행

 Step into

 F7

 함수 내부로 추적하여 들어감

 Step over

 F8

 함수 내부로 들어가지 않고 다음 코드 실행

 Animate into

 Ctrl+F7

 F7과 같지만 자동으로 실행

 Animate over

 Ctrl+F8

 F8과 같지만 자동으로 실행



 Go to 

Ctrl + G 

 원하는 주소로 이동 

 Execute till Cursor

F4 

 cursor 위치까지 실행 

 Set/ Reset BreakPoint

F2 

 BP 설정/ 해제 

 Preview CALL /JMP / address 

Enter 

 커서가 CALL/ JMP 등의 명령어 위치에 있으면 따라 들어감. 

 Comment 

 ; 

 코멘트 추가 

 Show the current EIP

 * 

 현재 EIP 위치를 다시 보여줌

 Show the previous Cursor 

 -  

 직전 커서 위치를 다시 보여줌 

 Label

 : 

 원하는 주소에 특정 이름을 붙여줌 


정도가 된다.이 자주 쓰는 키는 개인적으로 많이 쓰는 키인데 이걸 알아 두면 정말 편리하다




Plugin 에는 Plugin 폴더에 들어있는 플러그를 볼 수 있다. 이 플러그는 아래 사이트에서 다운 받을 수 있다.


이동하시려면 여기를 클릭하세요.




상단 메뉴는 다 살펴 보았고 이제 각 영역에서 오른쪽 클릭을 했을 시에 나타나는 메뉴 중 자주 사용하는 것을 살펴보자.

먼저 어셈블리코드 영역에서 오른쪽 클릭 했을 시에 볼 수 있는 메뉴들이다.



Assemble (Space) 는 어셈블리코드를 수정할 수 있다.

Comment (;)는 어셈블리코드 옆에 주석을 달수 있다. 자신만의 주석을 달 수 있으니 자유롭게 해석하여 옆에 달자!

Search for에 나오는 All 시리즈 정말 좋음...

크랙미들은 저기있는 것들만 잘 사용해도 웬만큼 다 풀수 있습니다.

All intermodular calls : 코드에서 사용된 API 목록

All commands : 작성한 코멘트를 찾을 수 있음

All referenced text strings : 텍스트를 볼 수 있음



그리고 스텍 영역에서 오른쪽 클릭을 했을 때 볼 수 있는 화면이다.

Address 는스텍 주소를 ESP, EBP 그리고 기준을 잡을 수 있는 좋은 기능을 가진 메뉴들이 있다.


Show ASCII dump는 아스키 코드 덤프를 추가로 볼 수 있고, Show UNICODE dump는 유니코드 덤프를 추가적으로 볼 수있다.

그리고 Lock stack은 디버깅 하는 도중 스텍이 움직이는 것을 막아줘 자신이 원하는 부분의 스텍을 해제할 때까지 볼 수있다.


여기서 언급을 하지 않았지만 많은 기능들이 있다. 그러니 한번씩 실행 시켜보면서 여러가지 기능을 사용하여 훌륭한 분석가가 되기를...





,

최근 댓글

최근 트랙백

알림

이 블로그는 구글에서 제공한 크롬에 최적화 되어있고, 네이버에서 제공한 나눔글꼴이 적용되어 있습니다.