SuperAPI AI 工具集

volatility-mcp

volatility-mcp 是一个面向 Volatility 3.x 的 MCP 服务器项目,将 Volatility 3 的内存取证能力与 FastAPI 和 Model Context Protocol(MCP)集成。它把 pslist、netscan 等 Volatility 插件封装为 REST API,使 AI 助手和 Web 应用能够直接访问内存分析结果。用户可通过 Claude Desktop 等 MCP 客户端,用自然语言提示执行内存取证分析,例如列出内存镜像中的进程、查看外部连接等。项目基于 Python 3.7+,需要预先安装 Volatility 3 二进制并配置环境变量 VOLATILITY_BIN。

访问官网

工具介绍

volatility-mcp 是一个托管在 GitHub 上的开源项目,为 Volatility 3.x 提供 MCP 服务器。其目标是将 Volatility 3 强大的内存分析能力与 FastAPI 和 Model Context Protocol(MCP)无缝集成,让内存取证不再有障碍:pslist、netscan 等插件可通过简洁的 REST API 访问,从而把内存取证产物直接连接到 AI 助手和 Web 应用。

主要能力

  • Volatility 3 集成:利用 Volatility 3 框架进行内存镜像分析。
  • FastAPI 后端:提供 RESTful API 与 Volatility 插件交互。
  • Web 前端支持(未来功能):设计用于连接基于 Web 的前端进行交互式分析。
  • Model Context Protocol(MCP):支持与 Claude Desktop 等 MCP 客户端进行标准化通信。
  • 插件支持:支持多种 Volatility 插件,包括用于进程列表的 pslist 和用于网络连接分析的 netscan。

项目架构 项目由以下组件构成:

  • MCP 客户端:如 Claude Desktop,与 FastAPI 后端交互。
  • FastAPI 服务器:基于 Python 的服务器,将 Volatility 插件暴露为 API 端点。
  • Volatility 3:执行分析的内存取证框架。 该架构允许用户通过 Claude Desktop 等 MCP 客户端分析内存镜像。用户可以使用自然语言提示执行内存取证分析,例如“show me the list of the processes in memory image x”或“show me all the external connections made”。

使用方式 前置条件:

  • 系统已安装 Python 3.7+。
  • 已安装 Volatility 3 二进制(参见 Volatility 3 安装指南),并添加到环境变量路径,变量名为 VOLATILITY_BIN。

步骤:

  1. 克隆仓库: git clone <repository_url> cd <repository_directory>
  2. 安装所需的 Python 依赖: pip install -r requirements.txt
  3. 启动 FastAPI 服务器以暴露 Volatility 3 API: uvicorn volatility_fastapi_server:app
  4. 安装 Claude Desktop(参见 Claude Desktop)。
  5. 将 Claude Desktop 配置为 volatility MCP 客户端:导航至 Claude → Settings → Developer → Edit Config,找到 claude_desktop_config.json 文件,并插入以下配置: { "mcpServers": { "vol": { "command": "python", "args": [ "/ABSOLUTE_PATH_TO_MCP-SERVER/vol_mcp_server.py", "-i", "/ABSOLUTE_PATH_TO_MEMORY_IMAGE/<memory_image>" ] } } } 注意:config.json 文件中的 -i 选项指定内存镜像文件的目录路径。 或者直接更新此文件: /Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json
  6. 按上述说明启动 FastAPI 服务器。
  7. 将 MCP 客户端(例如 Claude Desktop)连接到 FastAPI 服务器。
  8. 通过提问开始提示,例如“show me the running processes”“creating a tree relationship graph for process x”或“show me all external RFC1918 connections”。

适用场景 适用于需要通过 AI 助手或 Web 应用进行内存取证分析的场景,例如在调查中快速列出进程、分析网络连接、生成进程关系图等。

未来功能与增强(规划中)

  • 原生 Volatility Python 集成:在代码库中直接引入 Volatility Python SDK,而非通过子进程调用 volatility 二进制。
  • Yara 集成:实现从内存中转储进程并用 Yara 规则扫描以进行恶意软件分析。
  • 多镜像分析:支持同时分析多个内存镜像,以关联事件并识别跨系统的模式。
  • 添加更多 Volatility 插件:扩展内存分析范围。
  • GUI 增强:开发用户友好的 Web 界面,用于交互式内存分析和可视化。
  • 自动报告生成:自动生成总结内存分析发现的详细报告。
  • 高级威胁检测:引入检测内存中复杂威胁和异常的高级技术。

贡献方式 欢迎贡献!请遵循以下步骤:

  1. Fork 此仓库。
  2. 创建新分支(git checkout -b feature/my-feature)。
  3. 提交更改(git commit -m 'Add some feature')。
  4. 推送到分支(git push origin feature/my-feature)。
  5. 打开拉取请求。

限制与说明

  • 项目当前为 MCP 服务器,Web 前端支持为未来功能。
  • 需要预先安装 Volatility 3 二进制并正确配置环境变量。
  • 具体支持的插件范围、性能表现、收费情况等资料暂未提供。