Volatility는 메모리 덤프에서 디지털 아티팩트를 추출할 수 있는 도구입니다. 다양한 메모리 덤프 형식을 지원하며, 메모리 덤프를 분석하여 맬웨어, 루트킷 및 기타 의심스러운 활동을 탐지하는 데 사용되는 강력한 메모리 포렌식 프레임워크입니다. 이번 글에서는 Python을 사용하여 Windows에 Volatility 3를 설치하는 단계별 과정을 설명합니다.

 

 

◎ Python 3 설치

 - 공식 Python 웹사이트 에서 Python 3을 다운로드하여 설치하세요.

※ 설치 과정에서 Python을 PATH에 추가해야 합니다.


 - 또는 PyCharm Community Edition 무료버전을 다운로드하여 설치하세요.

 

 

◎ Volatility 3 Wheel 파일 다운로드

 - Volatility 3 Github에서  Volatility 3를 설치하기 위한 whl 파일을 다운로드하세요.

 

◎ Pip를 사용하여 Volatility 3 설치

 - 관리자 권한으로 cmd를 열고 .whl 파일을 다운로드한 디렉터리로 이동하세요. 그런 다음 명령을 실행하여 Volatility 3를 설치하세요.

C:\Users\User\Downloads> pip install volatility3-2.26.0-py3-none-any.whl

 

 - 또는 PyCharm Community Edition 콘솔에서 다음 명령을 실행하여 Volatility 3를 설치하세요.

(.venv) PS C:\Users\user\Downloads> pip install .\volatility3-2.26.0-py3-none-any.whl
Processing c:\users\user\downloads\volatility3-2.26.0-py3-none-any.whl
Collecting pefile>=2024.8.26 (from volatility3==2.26.0)
  Downloading pefile-2024.8.26-py3-none-any.whl.metadata (1.4 kB)
Downloading pefile-2024.8.26-py3-none-any.whl (74 kB)
Installing collected packages: pefile, volatility3
Successfully installed pefile-2024.8.26 volatility3-2.26.0

[notice] A new release of pip is available: 25.0.1 -> 25.1.1
[notice] To update, run: python.exe -m pip install --upgrade pip

 

◎ 설치 확인

 - Volatility 3가 올바르게 설치되었는지 확인하려면 다음 명령을 실행하세요.

C:\Users\User\Downloads> vol -h

 

또는 PyCharm Community Edition 콘솔에서 다음 명령을 실행하세요.

(.venv) PS C:\Users\user\Downloads> vol -h

설치가 성공적으로 완료되면 Volatility 3 도움말 메뉴가 표시됩니다.

(.venv) PS C:\Users\user\Downloads> vol -h
Volatility 3 Framework 2.26.0
usage: vol.exe [-h] [-c CONFIG] [--parallelism [{processes,threads,off}]] [-e EXTEND] [-p PLUGIN_DIRS] [-s SYMBOL_DIRS] [-v] [-l LOG] [-o OUTPUT_DIR] [-q]
               [-r RENDERER] [-f FILE] [--write-config] [--save-config SAVE_CONFIG] [--clear-cache] [--cache-path CACHE_PATH] [--offline | -u URL]
               [--filters FILTERS] [--hide-columns [HIDE_COLUMNS ...]] [--single-location SINGLE_LOCATION] [--stackers [STACKERS ...]]
               [--single-swap-locations [SINGLE_SWAP_LOCATIONS ...]]
               PLUGIN ...

An open-source memory forensics framework

options:
  -h, --help            Show this help message and exit, for specific plugin options use 'vol.exe <pluginname> --help'
  -c, --config CONFIG   Load the configuration from a json file
  --parallelism [{processes,threads,off}]
                        Enables parallelism (defaults to off if no argument given)
  -e, --extend EXTEND   Extend the configuration with a new (or changed) setting
  -p, --plugin-dirs PLUGIN_DIRS
                        Semi-colon separated list of paths to find plugins
  -s, --symbol-dirs SYMBOL_DIRS
                        Semi-colon separated list of paths to find symbols
  -v, --verbosity       Increase output verbosity
  -l, --log LOG         Log output to a file as well as the console
  -o, --output-dir OUTPUT_DIR
                        Directory in which to output any generated files
  -q, --quiet           Remove progress feedback
  -r, --renderer RENDERER
                        Determines how to render the output (quick, none, csv, pretty, json, jsonl)
  -f, --file FILE       Shorthand for --single-location=file:// if single-location is not defined
  --write-config        Write configuration JSON file out to config.json
  --save-config SAVE_CONFIG
                        Save configuration JSON file to a file
  --clear-cache         Clears out all short-term cached items
  --cache-path CACHE_PATH
                        Change the default path (C:\Users\user\AppData\Roaming\volatility3) used to store the cache
  --offline             Do not search online for additional JSON files
  -u, --remote-isf-url URL
                        Search online for ISF json files
  --filters FILTERS     List of filters to apply to the output (in the form of [+-]columname,pattern[!])
  --hide-columns [HIDE_COLUMNS ...]
                        Case-insensitive space separated list of prefixes to determine which columns to hide in the output if provided
  --single-location SINGLE_LOCATION
                        Specifies a base location on which to stack
  --stackers [STACKERS ...]
                        List of stackers
  --single-swap-locations [SINGLE_SWAP_LOCATIONS ...]
                        Specifies a list of swap layer URIs for use with single-location

 

+ Recent posts