返回市场
波动性-MCP-服务器

波动性-MCP-服务器

作者:bornpresident23 星标更新:2025-07-07

项目介绍

Volatility MCP Server

这是一个集成Volatility 3内存取证框架与Claude和其他兼容MCP的大语言模型(LLMs)的Model Context Protocol (MCP)服务器。

为什么这很重要

在印度,由于人口众多和网络犯罪率上升,数字取证调查员面临着大量的积压案件。此工具通过以下方式帮助解决这一挑战:

  • 允许调查人员使用简单的自然语言而不是复杂的命令来分析内存转储
  • 减少执行内存取证所需的专门技术知识
  • 通过自动化加速分析过程
  • 帮助清理案件积压,并更快地向司法系统提供结果

通过使内存取证更加易于访问,此工具可以显著减轻取证专家的工作负担,并提高印度的网络安全响应能力。

概述

该项目通过Model Context Protocol (MCP)将Volatility 3框架的强大内存取证功能与大语言模型(LLMs)连接起来。它允许您使用自然语言进行内存取证分析,通过将Volatility插件暴露为可以直接由Claude或其他兼容MCP的大语言模型调用的MCP工具。

特性

  • 自然语言内存取证:让Claude使用自然语言分析内存转储
  • 进程分析:检查正在运行的进程、父子关系以及隐藏的进程
  • 网络取证:识别内存转储中的网络连接
  • 恶意软件检测:查找潜在的代码注入和其他恶意工件
  • DLL分析:检查加载的DLL和模块
  • 文件对象:扫描内存中的文件对象
  • 自定义插件:使用自定义参数运行任何Volatility插件
  • 内存转储发现:自动在目录中查找内存转储

要求

  • Python 3.10或更高版本
  • Volatility 3框架
  • Claude Desktop或其他兼容MCP的客户端
  • MCP Python SDK(mcp包)

安装

  1. 克隆此仓库:

    git clone https://github.com/yourusername/volatility-mcp-server.git
    
  2. 安装所需的Python包:

    pip install mcp httpx
    
  3. 在脚本中配置Volatility路径:

    • 打开volatility_mcp_server.py并更新VOLATILITY_DIR变量以指向您的Volatility 3安装路径。
  4. 配置Claude Desktop:

    • 打开位于以下位置的Claude Desktop配置文件:
      • Windows: %APPDATA%\Claude\claude_desktop_config.json
      • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • 添加服务器配置:
    {
      "mcpServers": {
        "volatility": {
          "command": "python",
          "args": [
            "/path/to/volatility_mcp_server.py"
          ],
          "env": {
            "PYTHONPATH": "/path/to/volatility3"
          }
        }
      }
    }
    
    • /path/to/替换为您文件的实际路径。
  5. 重启Claude Desktop以应用更改。

使用方法

设置完成后,您可以简单地向Claude提出关于内存转储的自然语言问题:

  • "列出C:\path\to\dump.vmem内存转储中的所有进程"
  • "显示C:\path\to\dump.vmem中的网络连接"
  • "运行malfind以检查内存转储中的代码注入"
  • "进程ID 4328加载了哪些DLL?"
  • "检查C:\path\to\dump.vmem中的隐藏进程"

可用工具

该服务器公开了以下Volatility插件作为MCP工具:

  1. list_available_plugins - 显示所有可用的Volatility插件
  2. get_image_info - 提供有关内存转储文件的信息
  3. run_pstree - 显示进程层次结构
  4. run_pslist - 列出进程列表中的进程
  5. run_psscan - 扫描包括可能隐藏在内的进程
  6. run_netscan - 显示内存转储中的网络连接
  7. run_malfind - 检测潜在的代码注入
  8. run_cmdline - 显示进程的命令行参数
  9. run_dlllist - 列出进程加载的DLL
  10. run_handles - 显示文件句柄及其他系统句柄
  11. run_filescan - 扫描内存中的文件对象
  12. run_memmap - 显示特定进程的内存映射
  13. run_custom_plugin - 使用自定义参数运行任何Volatility插件
  14. list_memory_dumps - 在目录中查找内存转储

内存取证工作流程

此MCP服务器支持一个简化的内存取证工作流程:

  1. 初步分类

    • "显示memory.vmem中的进程树"
    • "列出memory.vmem中的所有网络连接"
  2. 可疑进程调查

    • "进程1234使用的命令行是什么?"
    • "显示进程1234加载的所有DLL"
    • "进程1234打开了哪些文件句柄?"
  3. 恶意软件搜索

    • "在memory.vmem上运行malfind以检查代码注入"
    • "显示具有异常父子关系的进程"
    • "在memory.vmem中查找隐藏的进程"

故障排除

如果您遇到问题:

  1. 路径问题

    • 确保所有路径都是绝对路径,并且在Windows路径中使用双反斜杠
    • 检查内存转储文件是否存在并且可读
  2. 权限问题

    • 以管理员身份运行Claude Desktop
    • 检查Python和Volatility目录是否具有正确的权限
  3. Volatility错误

    • 确保Volatility 3单独正常工作
    • 尝试在命令行中直接运行相同的命令
  4. MCP错误

    • 检查Claude Desktop日志中的MCP错误
    • 确保正确安装了MCP Python包

扩展

此服务器可以通过以下方式扩展:

  1. 添加更多的Volatility插件
  2. 创建自定义分析工作流
  3. 与其他取证工具集成
  4. 添加报告生成功能

许可证

MIT许可证