Notice
Recent Posts
관리 메뉴

Hacking Arts

VirtualKD를 이용한 vmware debugging 본문

Reversing/Window OS

VirtualKD를 이용한 vmware debugging

Rakehell 2014. 10. 1. 22:31

-사용 Tool : virtualkd , windbg , vmware


일단 VirtualKD를 구글검색해서 사이트에서 받아서 압축을 풀면 아래 사진과 같다.


[ 사진 1 ]


- 여기서 target이라는 폴더는 vmware의 가상 머신에 넣어준다. 그리고 나머지는 자신이 사용하고있는 host pc에서 사용하게 될 것이다.



[ 사진 2 ]

-일단 target에 있는 것을 install 해주면 됩니다.


[ 사진 3 ]


- 그다음 재부팅되면 아래 사진 4를 켜놓고 저런식으로 vitualkd를 선택하면 됩니다.


[사진 4]


-그 다음 dubugger path는 자신의 windbg가 설치된곳을 선택해주시고 오른쪽 run debugger를 누르면 됩니다.


[ 사진 5 ]

-그럼 요렇게 windbg를 이용해서 간단하게 kernel을 디버깅할 수 있다.!!


-이거 할때 문제점이 하나 발생 했는데 waiting to reconnect에서 계속해서 멈추는 것이였다.(사진6) 그래서 찾다보니.. symbol path에 아래 그림 처럼 넣어주니 잘된다!!(사진7)

[ 사진 6 ]

[ 사진 7 ]


- 디버그 심볼 파일이란 그럼 무엇일까?

실행파일을 빌드할 때 생성되는 디버그용 정보 파일을 말한다. 디버그 심볼 파일에 포함되는 디버그 정보란 실행파일 안에 존재하는 함수나 변수들의 이름과 위치, 소스파일, 소스라인 정보다. 비주얼 스튜디오나 windbg같은 디버거는 이 심볼파일을 이용해 소스라인 디버깅을 가능하게 한다.


-MS에선 윈도우 버전마다 심볼 패키지를 제공한다는데 용령이 커서 다운받는데 단점이 있다고 한다. 그래서 나온게 웹 심볼 서버이고 저 주소에서 MS에서 제작한 모든 OS 심볼을 제공한다. windbg를 사용해 디버깅 중인 윈도우 정보와 파일 정보를 심볼 서버로 보내면 심볼 서는 윈도우 버전에 맞는 심볼 파일만 windbg로 다운로드해줘서 정확한 심볼파일을 사용 할 수 있게 해준다고 한다!!


-참고

http://thebase.tistory.com/entry/Windbg-%EC%9B%B9-%EC%8B%AC%EB%B3%BC

http://sone.tistory.com/289