Volatility: 휘발성 메모리 포렌식 추출 프레임워크

발행: (2026년 2월 22일 오후 10:20 GMT+9)
6 분 소요

Source: Hacker News

왜 Volatility 3인가?

2019년에 Volatility Foundation은 Volatility 3을 출시했으며, 이는 원래 코드 베이스를 완전히 재작성한 버전입니다. 새로운 버전은 지난 10년 동안 등장한 많은 기술적·성능상의 문제들을 해결합니다. 추가적인 장점은 다음과 같습니다:

  • 확장 및 유지 관리가 쉬운 현대적인 모듈식 아키텍처.
  • 대용량 메모리 이미지에 대한 향상된 성능 및 확장성.
  • Volatility 커뮤니티의 목표에 더 잘 부합하는 맞춤형 Volatility Software License (VSL) 하에 배포.

전체 라이선스 텍스트는 VSL v1.0 라이선스 파일을 참조하십시오.

빠른 시작

1. 필요한 종속성 설치

pip install --user -e ".[full]"

2. 사용 가능한 옵션 보기

vol -h

3. Windows 메모리 샘플 검증

windows.info 플러그인을 실행하여 Volatility가 해당 샘플 유형을 지원하는지 확인합니다:

vol -f /home/user/samples/stuxnet.vmem windows.info

4. 다른 플러그인 실행

대부분의 플러그인은 단일 메모리 이미지와 함께 작동하므로 일반적으로 -f (또는 --single-location) 플래그가 필요합니다:

vol -f   [plugin_options]

일부 플러그인은 추가 옵션이 필요하거나 허용될 수 있습니다.
특정 플러그인의 도움말을 보려면 다음을 사용합니다:

vol -h

설치

Volatility 3은 Python 3.8.0 이상이 필요하며 PyPI 레지스트리에 게시됩니다.

PyPI에서

pip install volatility3

소스에서 (최신 개발 버전)

종속성을 시스템 패키지와 격리하기 위해 가상 환경을 사용하는 것을 권장합니다.

# Clone the repository
git clone https://github.com/volatilityfoundation/volatility3.git
cd volatility3/

# Create and activate a virtual environment
python3 -m venv venv
source venv/bin/activate   # on Windows use `venv\Scripts\activate`

# Install the package in editable mode with development extras
pip install -e ".[dev]"
  • GitHub 저장소의 stable 브랜치는 항상 최신 안정 버전을 포함합니다.
  • 기본 브랜치(develop)는 가장 최근의 개발 변경 사항을 포함합니다.

심볼 테이블

심볼 팩 다운로드

운영 체제다운로드
Windows
macOS
Linux

다운로드 검증

해시 유형파일
SHA‑256
SHA‑1
MD5

설치

  1. 압축 해제 각 zip 파일을.
  2. 배치 압축 해제된 디렉터리(windows, mac, linux 이름)를 volatility3/symbols 폴더에 또는 Volatility 3 실행 파일 옆에 있는 symbols 폴더에 넣습니다.

참고:

  • 누락된 Windows 심볼은 자동으로 조회, 다운로드, 생성 및 실시간으로 캐시됩니다.
  • macOS 및 Linux 심볼 테이블은 수동으로 생성해야 합니다(예: dwarf2json 도구 사용).

첫 실행 시 캐시 업데이트

  • Volatility 3이 새 심볼 팩으로 처음 실행될 때 캐시를 구축합니다.
  • 팩에 파일이 많아 이 단계는 몇 분이 걸릴 수 있습니다.
  • 이 과정은 중단 안전이며, 중단되면 다음 실행 시 중단된 지점부터 재개됩니다.
  • 파일이 동일한 위치에 있는 한, 각 심볼 세트당 캐시는 한 번만 구축하면 됩니다.

주의 사항

  • Windows와 macOS 심볼 팩은 대표적인 것으로, 생성 시점까지 완전합니다.
  • Linux 커널은 자주 재컴파일되어 고유하게 식별할 수 없으므로, 포괄적인 Linux 심볼 세트는 제공되지 않습니다.

문서

프레임워크는 docstring을 통해 문서화되어 있으며 Sphinx를 사용하여 빌드할 수 있습니다.

최신으로 생성된 문서 복사본은 다음에서 확인할 수 있습니다:

Volatility 3 Documentation (latest)

라이선스 및 저작권

© 2007‑2026 Volatility Foundation. All Rights Reserved.

Volatility Foundation License (VSL v1.0)

버그 및 지원 {#bugs-and-support}

버그를 발견했다고 생각되면, Volatility 3 GitHub 이슈 트래커 에 보고해 주세요.

버그를 보고할 때는 문제를 빠르게 해결할 수 있도록 다음 정보를 포함해 주세요:

  • Volatility 버전 사용 중인
  • 운영 체제 Volatility가 실행되는
  • Python 버전 Volatility를 실행하는 데 사용된
  • 분석 중인 메모리 샘플의 추정 OS
  • 실행한 전체 명령줄 (가능하면 코드 블록에 복사‑붙여넣기)
vol -f memory.raw --profile=Win10x64_19041 pslist

커뮤니티 지원을 원하시면 Slack에 참여하세요:

Volatility Foundation Slack

연락처 {#contact}

정보나 요청이 있으면 Volatility Foundation에 연락해 주세요:

0 조회
Back to Blog

관련 글

더 보기 »

절대 .online 도메인을 사지 마세요

저는 20년 넘게 .com을 고수해 왔습니다. 한 번은 그 규칙을 깨고 작은 프로젝트를 위해 .online TLD를 구입했습니다. 이것이 그 과정의 이야기입니다.