Back to MCP directory
publicPublicdnsLocal runtime

Volatility3

Volatility3 MCP Server是一个连接MCP客户端与Volatility3内存取证框架的工具,通过自然语言交互简化复杂的内存分析操作。

article

README

🚀 Volatility3 MCP 服务器

Volatility3 MCP 服务器是一款强大的工具,它将 MCP 客户端(如 Claude Desktop)与 Volatility3 这个高级内存取证框架连接起来。借助这种集成,大型语言模型能够分析内存转储、检测恶意软件,并通过简单的对话界面执行复杂的内存取证任务。

🚀 快速开始

配置步骤

  1. 克隆此仓库。
  2. 创建虚拟环境:
    python -m venv environ
    source environ/bin/activate
    
  3. 安装所需的依赖项:
    pip install -r requirements.txt
    

使用方式

您可以通过两种方式使用此项目:

选项 1:与 Claude Desktop 一起使用
  1. 配置 Claude Desktop:
    • 转到 Claude -> 设置 -> 开发者 -> 编辑配置 -> claude_desktop_config.json 并添加以下内容
         {
             "mcpServers": {
             "volatility3": {
                 "command": "绝对路径到虚拟环境/bin/python3",
                 "args": [
                 "绝对路径到/bridge_mcp_volatility.py"
                 ]
             }
             }
         }
      
      Claude Desktop 中可用的工具
  2. 重启 Claude Desktop 并开始分析内存转储。
选项 2:与 Cursor(SSE 服务器)一起使用
  1. 启动 SSE 服务器:
    python3 start_sse_server.py
    
  2. 配置 Cursor 使用 SSE 服务器:
    • 打开 Cursor 设置
    • 点击 功能 -> MCP 服务器
    • 添加一个新的 MCP 服务器,其 URL 为 http://127.0.0.1:8080/sse Cursor Composer
  3. 使用 Cursor Composer 的代理模式开始分析内存转储。

✨ 主要特性

  • 内存转储分析:使用各种插件分析 Windows 和 Linux 内存转储。
  • 进程检查:列出运行中的进程,查看其详细信息并识别可疑活动。
  • 网络分析:检查网络连接以发现命令和控制服务器。
  • 跨平台支持:适用于 Windows 和 Linux 内存转储(macOS 支持即将推出)。
  • 恶意软件检测:使用 YARA 规则扫描内存,识别已知恶意软件签名。

📚 详细文档

解决的问题

内存取证是一个复杂且需要专业知识和命令行操作的领域。此项目解决了以下问题:

  • 允许非专家通过自然语言进行内存取证。
  • 使大型语言模型能够直接分析内存转储并提供见解。
  • 自动化通常需要多个手动步骤的常见取证工作流程。
  • 提高了内存取证的易用性和用户友好性。

演示

演示视频

您还可以在此处找到一个关于此工具的详细演示

可用工具

  • initialize_memory_file:设置用于分析的内存转储文件。
  • detect_os:识别内存转储的操作系统。
  • list_plugins:显示所有可用的 Volatility3 插件。
  • get_plugin_info:获取特定插件的详细信息。
  • run_plugin:使用自定义参数执行任何 Volatility3 插件。
  • get_processes:列出内存转储中的所有运行进程。
  • get_network_connections:查看系统中的所有网络连接。
  • list_process_open_handles:检查进程访问的文件和资源。
  • scan_with_yara:使用 YARA 规则扫描内存中的恶意模式。

🤝 贡献

欢迎贡献!请随时提交 Pull Request。

📦 架构图

架构图

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client