Gaffx/volatility-mcp

分类Web
作者Community
星标459
定价Free

简介

volatility-mcp 将内存取证神器 Volatility 3 接入了 MCP 生态,让 AI 助手具备了直接分析内存镜像的能力。对于安全从业者而言,它将复杂的命令行插件(如 pslist、netscan)转化为 LLM 可调用的工具,你不再需要手动输入繁琐的参数,直接用自然语言询问“当前内存中有哪些异常进程”即可获得分析结果。该工具通过 REST API 桥接,上手门槛极低,将传统的专业取证分析流程从“手动执行-复制结果-交给 AI”简化为了“AI 直接操作-给出结论”的端到端体验。

核心亮点

  • 让 AI 直接调用 Volatility 3 插件分析内存
  • 自然语言驱动取证,无需记忆复杂命令行
  • 快速定位异常进程与网络连接,提升分析效率
  • 通过 REST API 桥接,适配多种 MCP 客户端

完整文档

![](https://img.shields.io/badge/License-Apache%202.0-blue?style=plastic&logo=adobefonts)
<p align="center">
<img src="assets/logo.png" height="300">
</p>
<h1 align="center">
您的内存取证 AI 助手
</h1>

Overview

Volatility MCP 将 Volatility 3 强大的内存分析能力与 FastAPI 及 Model Context Protocol (MCP) 无缝集成。通过简洁的 REST API,pslistnetscan 等插件变得触手可及,将内存伪像直接连接到 AI 助手和 Web 应用程序,消除内存取证的门槛。

Features

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

Architecture

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

  • MCP Client: 与 FastAPI 后端交互的 MCP 客户端(如 Claude Desktop)。
  • FastAPI Server: 一个基于 Python 的服务器,将 Volatility 插件公开为 API 接口。
  • Volatility 3: 执行分析的内存取证框架。该架构允许用户通过 Claude Desktop 等 MCP 客户端分析内存镜像。用户可以使用自然语言提示词执行内存取证分析,例如:
显示内存镜像 x 中的进程列表,或显示所有外部连接

快速上手

前置条件

  • 系统已安装 Python 3.7+

安装

1. 克隆仓库:

code
git clone <repository_url>
cd <repository_directory>
2. 安装所需的 Python 依赖:
code
pip install -r requirements.txt
3. 启动 FastAPI 服务器以公开 Volatility 3 API:
code
uvicorn volatility_fastapi_server:app
4. 安装 Claude Desktop(参见 Claude Desktop
5. 要将 Claude Desktop 配置为 volatility MCP 客户端,请前往 Claude → Settings → Developer → Edit Config,找到 claude_desktop_config.json 文件,并插入以下配置详情
6. 请注意,config.json 文件中的 -i 选项指定了内存镜像文件的目录路径。
code
{
"mcpServers": {
"vol": {
"command": "python",
"args": [
"/ABSOLUTE_PATH_TO_MCP-SERVER/vol_mcp_server.py", "-i",
"/ABSOLUTE_PATH_TO_MEMORY_IMAGE/<memory_image>"
]
}
}
}
或者,直接更新此文件:

/Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json

Usage

1. 按照上述说明启动 FastAPI server。
2. 将 MCP client(例如 Claude Desktop)连接到 FastAPI server。
3. 通过询问关于范围内 memory image 的问题来开始提示,例如让我显示正在运行的进程、为进程 x 创建树状关系图,或显示所有外部 RFC1918 连接。

!image
!image
!image
!image

Future Features and Enhancements* 原生 Volatility Python 集成: 将 Volatility Python SDK 直接集成到代码库中,而非通过 subprocess 调用 volatility 二进制文件。

  • Yara 集成: 实现从内存 dump 进程并使用 Yara 规则进行扫描的功能,用于恶意软件分析。
  • 多镜像分析: 支持同时分析多个内存镜像,以关联事件并识别跨不同系统的模式。
  • 增加更多 Volatility Plugins: 添加更多 volatility plugins 以扩展内存分析的范围。
  • GUI 增强: 开发一个用户友好的 Web 界面,用于交互式内存分析和可视化。
  • 自动化报告生成: 自动生成详细报告,总结内存分析的结果。
  • 高级威胁检测: 引入高级技术以检测内存中复杂的威胁和异常。

Contributing

欢迎贡献!请遵循以下步骤进行贡献:

1. Fork 本仓库。
2. 创建新分支 (git checkout -b feature/my-feature)。
3. 提交更改 (git commit -m 'Add some feature')。
4. 推送到你的分支 (git push origin feature/my-feature)。
5. 提交 pull request。

![MseeP.ai Security Assessment Badge](https://mseep.ai/app/gaffx-volatility-mcp)