Memory dump analysis

Memory dump analysis is the most common type of challenge that creators give to participants. They might provide a .raw or .mem file, and you are required to conduct analysis and solve the challenge's questions.

Here are the tools you need for this type of challenge:

  1. Volatility3 or Volatility Workbench

  2. MemProcFS

  3. EVTXtract

Noted that in the industry, we don't just get a memory dump file; we get both disk images and memory dumps. However, for the sake of challenge puzzles, the challenge creator might give you only a memory dump to make it more challenging.

But before we use all these actual weapons, please give a shot with strings command with grep context_strings on the mem dump. For example:

strings windows.mem | grep -i "flag{"

Strategy

  1. Check running processes

  2. Check commands

  3. Check Network connections

  4. Check injected process

  5. Check files

  6. Check registry

MemProcFS

Imagine you can "Mount" memory images and analyze them with Explorer and Notepad. This tool, MemProcFS will create a virtual file system representing the processes, file handles, registry, $MFT, and more.

To install and use MemProcFS, please install Dokan first at https://github.com/dokan-dev/dokany/releases

Then download the binaries from the release: https://github.com/ufrisk/MemProcFS/releases

Usage

Mount and forensics!

memprocfs.exe -device memdump.mem -forensic 1

Navigate and explore the folders:

Running Processes

Navigate to M:\sys\proc where the files:

proc = Show process in tree mode proc-v = Show process with command

Network connection

Navigate to M:\sys\net\

Investigate injected process

Navigate to M:\forensic\findevil and find RWX section in the output result

Dump shellcode

Go to M:\pid\<PID number\vmemd and then find the address that we're take note from the findevil result

Then, we can use shellcode emulator or shellcode launcher to know what the program does including:

  1. Shellcode2exe

  2. Blobrunner

  3. SCDbg

  4. speakeasy

Volatility WorkBench

Volatility Workbench is a graphical user interface (GUI) for the Volatility if you hate Linux command line version.

Basic Usage

Browse Image -> Choose Windows Platform as option -> Refresh Process List > Choose Command options -> Run -> Investigate the output

These is the plugins that I found crucial in analysis:

EVTXtract

This tool recovers and reconstructs fragments of EVTX log files from raw binary data, including unallocated space and memory images.

The use case of this tool is when the challenge creator ask us to find something in the event log, but all he/she gives is a mem dump.

Download: https://github.com/williballenthin/EVTXtract

Usage

It's quite hard to read the XML output, you might need CTRL+F with context of the incident.

Last updated