使用说明

项目简介

MalwareBazaar MCP服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在为网络安全研究人员提供便捷的恶意软件威胁情报访问能力。它通过与 MalwareBazaar API 交互,将最新的恶意软件样本信息和元数据以结构化的方式提供给支持 MCP 协议的客户端,例如 Claude 等 LLM 应用。研究人员可以通过自然语言指令,借助 LLM 客户端和此 MCP 服务器,快速查询和理解 MalwareBazaar 上的威胁情报,辅助恶意软件分析和安全研究工作。

主要功能点

  • 实时威胁情报: 对接 MalwareBazaar API,提供最新的恶意软件样本数据。
  • 样本元数据查询: 支持通过 SHA256 哈希值查询特定恶意软件样本的详细信息。
  • 最近样本列表: 获取 MalwareBazaar 最近上传的恶意软件样本列表,方便追踪最新威胁动态。
  • 标准化 MCP 接口: 遵循 MCP 协议标准,易于集成到支持 MCP 的 LLM 客户端。
  • 工具化功能: 将 MalwareBazaar 的数据查询功能封装为 MCP 工具 (Tools),供 LLM 客户端调用。

安装步骤

  1. 获取 MalwareBazaar API 密钥:

  2. 创建 '.env' 配置文件:

    • 在项目根目录下创建名为 '.env' 的文件。
    • 将以下内容添加到 '.env' 文件中,并将 '<APIKEY>' 替换为您在步骤 1 中获取的 API 密钥。
      MALWAREBAZAAR_API_KEY=<APIKEY>
  3. 安装依赖:

    • 确保您的系统已安装 Python 和 uv (Rust-based Python package installer and virtual environment manager)。
    • 打开终端,导航到项目根目录。
    • 运行以下命令创建并激活虚拟环境,并安装项目依赖:
      curl -LsSf https://astral.sh/uv/install.sh | sh
      uv init mb
      cd mb
      uv venv
      source .venv/bin/activate
      uv pip install -r requirements.txt
  4. 使 MCP 服务器脚本可执行:

    • 运行以下命令赋予 'mb.py' 脚本执行权限:
      chmod +x mb.py

服务器配置

要将此 MCP 服务器添加到 MCP 客户端(例如 Claude),您需要配置客户端的 MCP 服务器设置。以下是一个示例配置,您需要根据您的实际环境进行调整。

MCP 服务器配置 (JSON 格式):

{
    "mcpServers": {
        "malwarebazaar": {  // 服务器名称,客户端用于引用
            "command": "/Users/XXX/.local/bin/uv",  // uv 命令的绝对路径 (根据 uv 的实际安装路径修改)
            "args": [
                "--directory",                   // 指定工作目录
                "/Users/XXX/Documents/mb",      // 项目的绝对路径 (根据您的项目存放路径修改)
                "run",                           // 使用 uv run 命令执行脚本
                "mb.py"                          // MCP 服务器脚本名称
            ]
        }
    }
}

配置参数说明:

  • '"malwarebazaar"': 自定义的服务器名称,在客户端中用于识别和调用此服务器。
  • '"command"': 启动 MCP 服务器的命令。这里使用 'uv run' 来执行 Python 脚本。请确保路径 '/Users/XXX/.local/bin/uv' 指向您系统中 'uv' 可执行文件的实际路径。您可以使用 'which uv' 命令查找 'uv' 的路径。
  • '"args"': 传递给 'uv run' 命令的参数列表。
    • '"--directory"' 和 '"/Users/XXX/Documents/mb"': 指定 'uv run' 命令的工作目录为您的项目根目录。请将 '"/Users/XXX/Documents/mb"' 替换为您的项目实际存放的绝对路径。
    • '"run"': 'uv run' 命令子命令,用于执行 Python 脚本。
    • '"mb.py"': 要执行的 MCP 服务器脚本文件名。

请注意: 您需要将上述配置示例中的 '/Users/XXX/.local/bin/uv' 和 '"/Users/XXX/Documents/mb"' 替换为您实际的 'uv' 命令路径和项目目录路径。

基本使用方法

  1. 启动 MCP 服务器:

    • 打开终端,导航到项目根目录。
    • 运行以下命令启动 MCP 服务器:
      uv --directory /Users/XXX/Documents/mb run mb.py  # 确保路径与您的配置一致
    • 服务器成功启动后,将会在终端后台运行,等待客户端连接和请求。
  2. 在 MCP 客户端中查询:

    • 打开您配置了 MalwareBazaar MCP 服务器的 MCP 客户端(例如 Claude)。
    • 使用自然语言指令向客户端提问,例如:
      • 'Help me understand the latest hash from Malware Bazaar.' (帮我了解 MalwareBazaar 上最新的哈希值)
      • 'Get recent malware samples from Malware Bazaar.' (从 MalwareBazaar 获取最近的恶意软件样本)
      • 'What is the info about SHA256 hash XXXXX...?' (关于 SHA256 哈希 XXXXX... 的信息是什么?)
    • 客户端会将您的指令转换为 MCP 请求发送到 MalwareBazaar MCP 服务器。
    • 服务器处理请求并从 MalwareBazaar API 获取数据,然后将结果返回给客户端。
    • 客户端会将结果以自然语言或结构化形式呈现给您。

示例查询:

  • "最近 MalwareBazaar 上有哪些新的恶意软件样本?"
  • "请提供 SHA256 哈希值为 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 的恶意软件样本的详细信息。"

通过以上步骤,您就可以利用 MalwareBazaar MCP 服务器,在支持 MCP 协议的客户端中方便地查询和使用 MalwareBazaar 的威胁情报数据,辅助您的网络安全研究工作。

信息

分类

网页与API