'2011/03'에 해당되는 글 3건

  1. 2011.03.11 winDBG로 Process 리스트 및 Process 검증하기
  2. 2011.03.10 MAC live data 수집
  3. 2011.03.09 ENCE 준비 1. 시험 신청

모든 테스트는 Windows xp service pack 3에서 수행되었습니다.

- winDBG download
http://msdn.microsoft.com/en-us/windows/hardware/gg463009

- winDBG symbol download
http://msdn.microsoft.com/en-us/windows/hardware/gg463028


-LiveKD download
http://technet.microsoft.com/en-us/sysinternals/bb897415

위 URL에서 테스트시 사용할 파일을 다운로드 한 후 설치하였습니다.

winDBG는 기본설정으로 설치하였으며, symbol은 c:\symbols에 설치하였습니다.


1. LiveKD
설치 후 winDBG로 커널 접근을 쉽게 도와주는 LiveKD를  사용하였습니다.

-w 옵션을 사용하여, LiveKD를 사용함과 동시에 winDBG를 사용하였습니다.

사용자 삽입 이미지








2. PROCESS 내역 보기

!process 0 0 을 사용하여 현재 동작하고 있는 프로세스 내역을 확인해 봅니다.

0: kd> !process 0 0
**** NT ACTIVE PROCESS DUMP ****
PROCESS 825b7830  SessionId: none  Cid: 0004    Peb: 00000000  ParentCid: 0000
    DirBase: 02b40020  ObjectTable: e1002e40  HandleCount: 264.
    Image: System

PROCESS 82429948  SessionId: none  Cid: 0220    Peb: 7ffd8000  ParentCid: 0004
    DirBase: 02b40040  ObjectTable: e14558d8  HandleCount:  19.
    Image: smss.exe

PROCESS 82446da0  SessionId: 0  Cid: 0260    Peb: 7ffd7000  ParentCid: 0220
    DirBase: 02b40060  ObjectTable: e15e3858  HandleCount: 378.
    Image: csrss.exe

PROCESS 82344020  SessionId: 0  Cid: 0278    Peb: 7ffd8000  ParentCid: 0220
    DirBase: 02b40080  ObjectTable: e14f2590  HandleCount: 460.
    Image: winlogon.exe

PROCESS 8242f6e8  SessionId: 0  Cid: 02a4    Peb: 7ffdb000  ParentCid: 0278
    DirBase: 02b400a0  ObjectTable: e17ac350  HandleCount: 261.
    Image: services.exe

PROCESS 82449b88  SessionId: 0  Cid: 02b0    Peb: 7ffd7000  ParentCid: 0278
    DirBase: 02b400c0  ObjectTable: e17a6dd0  HandleCount: 349.
    Image: lsass.exe



3. 프로세스 링크 따라가기

작업관리자 -> 프로세스에서 확인되는 프로세스를 winDBG로 따라 들어 가보겠습니다.

0: kd> dt _EPROCESS 8238ea00
   +0x174 ImageFileName    : [16]  "cmd.exe"

   +0x088 ActiveProcessLinks : _LIST_ENTRY [ 0x821dc0a8 - 0x81f03658 ]


0: kd> dd 8238ea00+0x088
8238ea88  821dc0a8 81f03658
                  FLINK       BLINK


0: kd> dt _EPROCESS 81f03658-0x88
   +0x174 ImageFileName    : [16]  "AYServiceNT.aye"

   +0x088 ActiveProcessLinks : _LIST_ENTRY [ 0x8238ea88 - 0x82366280 ]



4. 프로세스 특징

윈도우는 Memory Pool에 8바이트 단위로 메모리를 할당합니다. Memory Pool에는 Ethread와 Eprocess와 같은 커널 오브젝트가 존재합니다.


- Pool_Header
메모리 풀에 할당된 메모리 블록은 관리를 위한 자료구조인 Pool_Header를 포함합니다.


- windbg에서
dt _POOL_HEADER 를 확인하면 0x004 offset에 PoolTag가 있습니다.


4-1. _POOL_HEADER에서 확인된 주소가 process와 thread를 담고있으면 0xe36f7250, 0xe5726854값을 가지게 됩니다.


PROCESS 82283370  SessionId: 0  Cid: 0574    Peb: 7ffde000  ParentCid: 0638
    DirBase: 02b403a0  ObjectTable: e1624420  HandleCount:  56.
    Image: notepad.exe


0: kd> dt _POOL_HEADER 82283370-0x18-0x8
nt!_POOL_HEADER
   +0x000 PreviousSize     : 0y000000001 (0x1)
   +0x000 PoolIndex        : 0y0000000 (0)
   +0x002 BlockSize        : 0y001010000 (0x50)
   +0x002 PoolType         : 0y0000101 (0x5)
   +0x000 Ulong1           : 0xa500001
   +0x004 ProcessBilled    : 0xe36f7250 _EPROCESS
   +0x004 PoolTag          : 0xe36f7250
   +0x004 AllocatorBackTraceIndex : 0x7250
   +0x006 PoolTagHash      : 0xe36f


4-2. Object_Header
Object_HEADER는 Type필드를 가지고 있으면 오브젝트에 대한 일반적인 속성을 담고 있습니다. 해당 값이 프로세스일 경우 PsProcessType과 같거나 0xbad040값을 갖습니다.

PROCESS 82283370  SessionId: 0  Cid: 0574    Peb: 7ffde000  ParentCid: 0638
    DirBase: 02b403a0  ObjectTable: e1624420  HandleCount:  56.
    Image: notepad.exe

0: kd> !object 82283370
Object: 82283370  Type: (825b7e70) Process
    ObjectHeader: 82283358 (old version)
    HandleCount: 2  PointerCount: 17

0: kd> dd PsProcessType L1
805659b8  825b7e70



4-3. DISPATCHER_HEADER
Eprocess구조체 가장 앞부분에 존재하는 DISPATCHER_HEADER의 type과 size를 확인해보면, 프로세스의 경우 type은 0x3 size는 0x1b라는 것을 알 수 있습니다.


PROCESS 82283370  SessionId: 0  Cid: 0574    Peb: 7ffde000  ParentCid: 0638
    DirBase: 02b403a0  ObjectTable: e1624420  HandleCount:  56.
    Image: notepad.exe


0: kd> dt _DISPATCHER_HEADER 82283370
ntdll!_DISPATCHER_HEADER
   +0x000 Type             : 0x3 ''
   +0x001 Absolute         : 0 ''
   +0x002 Size             : 0x1b ''
   +0x003 Inserted         : 0 ''
   +0x004 SignalState      : 0
   +0x008 WaitListHead     : _LIST_ENTRY [ 0x82283378 - 0x82283378 ]



'Header 가지고 놀기' 카테고리의 다른 글

PE구조 알아보자  (0) 2011.02.10
Prefetch Header 분석  (4) 2010.01.08
Thumbs.db을 통한 사진파일 복구  (3) 2009.09.02
Posted by 도시형닌자
:

MAC live data 수집

Forensics 2011. 3. 10. 10:55 |
이번달에도 회사에서 월간 "안"이 발간되었다. 나는 맥 포렉식 2회를 썼으며 그 내용은
MAC live data 수집이였다. evernote에서 그림파일로 따와서 붙여넣는다

사용자 삽입 이미지
Posted by 도시형닌자
:
1. guidancesoftware.com 에 방문 하여 EnCE Application을 내려 받습니다.
http://www.guidancesoftware.com/computer-forensics-training-ence-certification.htm
위 페이지에 접근하면 아래와 같은 페이지가 나오며 2번에서 application을 다운로드 합니다.
시험은 인증받은 곳에서 ENCE 교욱을 받은자와 forensics 업무 12개월 이상 수행한 자에게 제공됩니다.

사용자 삽입 이미지




2. 12개월 경력 인정받은자
본인은 경력을 인정받아 시험을 준비하므로 아래와 같이 기입한 후 아래 메일로 발송하였습니다.
Certification <certification@guidancesoftware.com>

기입내용은 아래와 같습니다.(주소 및 경력 내용을 영어로 기입합니다)

사용자 삽입 이미지

사용자 삽입 이미지

빨간색으로 표시된 부분만 기입하여 메일로 보내었습니다.

3. 기입한 email로 받은 답변
첨부파일로 제공되는 내용을 바탕으로 금액을 결제할 경우, 시험에 응시할 수 있다는 메일을 받게 됩니다.

사용자 삽입 이미지



4. 시험비 결제
금년에 시험이 225$로 할인되었으며, 카드번호, 보안코드, 이름을 보내면 됩니다.

prometric이 아니고~ 시험은 EXAMBUILDER로 진행되며, 결제가 완료되면, 30정도의 기한이 정해집니다.


Posted by 도시형닌자
: