[그림] vm -> setting
커널 디버깅을 하기 위해서는 Serial Port를 추가해 줄 필요가 있다. 이는 전원을 끈 상태에서, Vm에서 setting을 들어가면 된다.
[그림] Serial Port
Serial Port를 수정하는 장면이다. Output to named pipe를 선택한다.
[그림] Serial Port
초기 파이프 이름은 위 그림에서 처럼 \\.\pipe\com_1로 나온다. 이를 복사해두거나 기억해두자.(굳이 기억하지 않아도 나중에 찾아서 하면 되긴 한다.)
[그림] Edit -> Preferences
Windbg가 붙지 않아서 고생했었는데, 다음과 같은 작업을 해주어야 한다.
[그림] Devices
Edit -> Preferences로 들어가서, Devices로 진입한 후, Virtual printer에 체크를 해주어야 한다. 그래야 Windbg가 붙는다.
여기까지 진행을 했으면 Windbg로 넘어가자
[그림] WinDbg
File -> Kernel Debug를 클릭한다.
[그림] Kernel Debugging -> COM
COM에서 Port를 아까 기억해둔 \\.\pipe\com_1를 적어준다. 그리고 Pipe와 Reconnect에 체크를 해주자.
[그림] File -> Symbol File Path
[그림] Symbol Path
Symbol Path는 다음과 같이 설정해 주면 된다.
c:\sym;srv*c:\sym\websym*http://msdl.microsoft.com/download/symbols
여기까지 하고 Vm에 붙일 윈도우를 Power On하자
Power On 한 후에, cmd를 관리자 권한으로 실행시키자.
[그림] debug on
디버깅 설정을 해주는 것이다.
그리고 WinDbg에서 Break를 걸어주면 커널 디버깅이 되는 것을 확인할 수 있다.
[그림] Debug -> Break
[그림] 실행화면
위 그림처럼 나왔다면 성공한 것이다.
[그림] 실행
[그림] 실행
커널 디버깅을 함으로써 EPROCESS, KPROCESS 등 구조체를 확인 할 수 있고, 루트킷의 탐지가 가능하다.
'Shake2Malware > rootkit' 카테고리의 다른 글
메모리 포렌식을 이용한 DKOM으로 은닉된 프로세스 찾기 (2) | 2017.05.04 |
---|