Volatility:易失性内存取证提取框架

发布: (2026年2月22日 GMT+8 21:20)
5 分钟阅读

Source: Hacker News

为什么选择 Volatility 3?

在 2019 年,Volatility 基金会发布了 Volatility 3,对原始代码库进行了一次完整的重写。新版本解决了过去十年中出现的许多技术和性能挑战。其他优势包括:

  • 现代化、模块化的架构,便于扩展和维护。
  • 对大型内存镜像的性能和可扩展性得到提升。
  • 采用 Volatility Software License (VSL) 发行,这是一种自定义许可证,更好地契合 Volatility 社区的目标。

完整的许可证文本请参阅 VSL v1.0 license file

Source:

快速入门

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

从源码(最新开发版本)

我们建议使用 虚拟环境,以将依赖项与系统软件包隔离。

# 克隆仓库
git clone https://github.com/volatilityfoundation/volatility3.git
cd volatility3/

# 创建并激活虚拟环境
python3 -m venv venv
source venv/bin/activate   # 在 Windows 上使用 `venv\Scripts\activate`

# 以可编辑模式安装并包含开发额外依赖
pip install -e ".[dev]"
  • GitHub 仓库的 stable 分支始终包含最新的稳定发布。
  • 默认分支 (develop) 包含最近的开发更改。

符号表

下载符号包

操作系统下载
Windows
macOS
Linux

验证下载

哈希类型文件
SHA‑256
SHA‑1
MD5

安装

  1. 解压 每个 zip 文件。
  2. 解压后的目录(名为 windowsmaclinux)放入 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. 版权所有。

Volatility Foundation License (VSL v1.0)

错误报告与支持 {#bugs-and-support}

如果您认为发现了错误,请在 Volatility 3 GitHub issue tracker 上报告。

提交错误报告时,请提供以下信息,以帮助我们快速解决问题:

  • Volatility 版本 您正在使用的
  • 操作系统 Volatility 运行的系统
  • Python 版本 用于运行 Volatility 的 Python 版本
  • 疑似操作系统 正在分析的内存样本的操作系统
  • 您执行的 完整命令行(复制粘贴,最好放在代码块中)
vol -f memory.raw --profile=Win10x64_19041 pslist

如需社区支持,请加入我们的 Slack:

Volatility Foundation Slack

联系方式 {#contact}

如需信息或请求,请联系 Volatility Foundation

0 浏览
Back to Blog

相关文章

阅读更多 »

大学的滥用

请提供您希望翻译的具体摘录或摘要文本,我才能为您进行简体中文翻译。