tmxklab

4.1 메모리 수집 (DumpIt) 본문

Security/04 forensic

4.1 메모리 수집 (DumpIt)

tmxk4221 2021. 4. 28. 15:10

이제 메모리를 덤프하는 방법을 알아보자

메모리를 수집할 수 있는 다양한 도구가 있지만 여기서는 DumpIt이라는 툴을 사용해서 메모리를 덤프한다.

(DumpIt은 Comae memory toolkit의 한 부분으로 최신 버전을 다운받으려면 comae.com에 들어가서 계정 생성 후, Comae memory toolkit을 받으면 된다는데 귀찮다.. 그냥 아래 링크에서 다운받자) 

 

Crypt2Shell/Comae-Toolkit

Memory Dump. Contribute to Crypt2Shell/Comae-Toolkit development by creating an account on GitHub.

github.com

 

DumpIt은 32bit(x86), 64bit(x64) 시스템에서 사용 가능하고 기본적으로 Microsoft Crash Dump(.dmp파일)형식으로 메모리를 덤프한다. 덤프 파일을 통해 Volatility와 같은 메모리 분석 도구 또는 WinDbg에서 분석가능하다.

 

[ Option 확인 ]

C:\Users\sec\Desktop\Comae-Toolkit-3.0.20171228.1\x64>DumpIt.exe /?

  DumpIt 3.0.20171228.1
  Copyright (C) 2007 - 2017, Matthieu Suiche <http://www.msuiche.net>
  Copyright (C) 2012 - 2014, MoonSols Limited <http://www.moonsols.com>
  Copyright (C) 2015 - 2017, Comae Technologies FZE <http://www.comae.io>

Usage: DumpIt [Options] /OUTPUT <FILENAME>

Description:
  Enables users to create a snapshot of the physical memory as a local file.

Options:
  /TYPE, /T             Select type of memory dump (e.g. RAW or DMP) [default: DMP]
  /OUTPUT, /O           Output file to be created. (optional)
  /QUIET, /Q            Do not ask any questions. Proceed directly.
  /NOLYTICS, /N         Do not send any usage analytics information to Comae Technologies. This is used to improve our services.
  /NOJSON, /J           Do not save a .json file containing metadata. Metadata are the basic information you will need for the analysis.
  /LIVEKD, /L           Enables live kernel debugging session.
  /COMPRESS, /R         Compresses memory dump file.
  /APP, /A              Specifies filename or complete path of debugger image to execute.
  /CMDLINE, /C          Specifies debugger command-line options.
  /DRIVERNAME, /D       Specifies the name of the installed device driver image.

Examples:

  Create a local memory snapshot:

      DumpIt.exe /OUTPUT snapshot.bin

  Enable live kernel debugging session:

      DumpIt.exe /L /A <debugger image path>

  Extract metadata from machine in live kernel debugging session:

      DumpIt.exe /L /A Dmp2Json.exe /C "/Y srv*C:\Symbols*http://msdl.microsoft.com/download/symbols /C \"/live /all /datetime /archive /snapshot C:\Snapshots\Snapshot\""

 

 

1) "/OUTPUT" or "/O"

-> 메모리를 수집하고 지정한 파일 이름으로 결과를 저장

C:\Users\sec\Desktop\Comae-Toolkit-3.0.20171228.1\x64>DumpIt.exe /O test.dmp

  DumpIt 3.0.20171228.1
  Copyright (C) 2007 - 2017, Matthieu Suiche <http://www.msuiche.net>
  Copyright (C) 2012 - 2014, MoonSols Limited <http://www.moonsols.com>
  Copyright (C) 2015 - 2017, Comae Technologies FZE <http://www.comae.io>

    Destination path:           \??\C:\Users\sec\Desktop\Comae-Toolkit-3.0.20171228.1\x64\test.dmp

    Computer name:              LAPTOP-LB4RMK61


    --> Proceed with the acquisition ? [y/n] n
    Aborting...

 

 

2) "/TYPE" or "/T"

-> Microsoft crash dump(.dmp)파일 대신에 원시 메모리 덤프(.bin)를 수집

C:\Users\sec\Desktop\Comae-Toolkit-3.0.20171228.1\x64>DumpIt.exe /T RAW

  DumpIt 3.0.20171228.1
  Copyright (C) 2007 - 2017, Matthieu Suiche <http://www.msuiche.net>
  Copyright (C) 2012 - 2014, MoonSols Limited <http://www.moonsols.com>
  Copyright (C) 2015 - 2017, Comae Technologies FZE <http://www.comae.io>

    WARNING: RAW memory snapshot files are considered obsolete and as a legacy format.

    Destination path:           \??\C:\Users\sec\Desktop\Comae-Toolkit-3.0.20171228.1\x64\LAPTOP-LB4RMK61-20210429-004442.bin

    Computer name:              LAPTOP-LB4RMK61


    --> Proceed with the acquisition ? [y/n] n
    Aborting...

 

 

3) "/COMPRESS" or "/R"

-> .zdmp(Comae 압축 크래시 덤프)파일로 생성함으로써 크기를 줄이고 더 빠르게 수집

C:\Users\sec\Desktop\Comae-Toolkit-3.0.20171228.1\x64>DumpIt.exe /R

  DumpIt 3.0.20171228.1
  Copyright (C) 2007 - 2017, Matthieu Suiche <http://www.msuiche.net>
  Copyright (C) 2012 - 2014, MoonSols Limited <http://www.moonsols.com>
  Copyright (C) 2015 - 2017, Comae Technologies FZE <http://www.comae.io>

    Destination path:           \??\C:\Users\sec\Desktop\Comae-Toolkit-3.0.20171228.1\x64\LAPTOP-LB4RMK61-20210429-004537.zdmp

    Computer name:              LAPTOP-LB4RMK61


    --> Proceed with the acquisition ? [y/n] n
    Aborting...

 

+) VMWare를 일시 정지하고 가상 머신의 메모리 수집 가능 -> 악성코드 샘플 실행 후 VMWare를 정지하여 호스트에서 .vmem확장자를 가진 파일로 저장됨

+) Virtual Box는 VM과 달리 일시 정지를 통해 메모리 수집을 할 수 없으므로 게스트 머신 내부에서 DumpIt 사용

 

Raw Memory Dump으로 덤프뜨면 다음과 같이 파일이 생성된다.

파일 크기가 겁나 크다;;

 

요걸로 volatility에서 사용할라니깐 시간이 너무 걸린당;;

 

그래서 메모리 분석을 위해 다음 링크에서 메모리 덤프파일을 구해서 분석해보자

 

volatilityfoundation/volatility

An advanced memory forensics framework. Contribute to volatilityfoundation/volatility development by creating an account on GitHub.

github.com

 

(참고로 Comae memory toolkit말고 그냥 구글링해서 dumpit다운받아서 실행하면 .RAW파일 형식으로 덤프떠지는데 위에서 덤프떴던 .bin이나 똑같은 것 같다.)

'Security > 04 forensic' 카테고리의 다른 글

4.2 메모리 분석(feat. Volatility)  (0) 2021.04.28
4. 메모리 수집/분석  (0) 2021.04.22
3. 비활성 데이터 수집/분석  (0) 2021.04.22
2. 활성 데이터 수집/분석  (0) 2021.04.22
1. 디지털 포렌식 개요  (0) 2021.04.22
Comments