项目简介

这是一个基于 Model Context Protocol (MCP) 开发的服务器,旨在使AI助手(如Claude)能够访问 Exploit Database (ExploitDB) 的功能。它允许AI模型查询关于安全漏洞和相关利用代码的信息,增强网络安全研究和威胁情报分析能力。

主要功能点

  • 漏洞搜索: 根据关键词、CVE ID、平台等多种条件搜索 ExploitDB 中的漏洞。
  • 漏洞详情: 获取特定漏洞的全面信息,包括利用代码(如果配置允许)。
  • 按CVE查询: 查找与特定 CVE ID 相关联的所有漏洞。
  • 最新漏洞: 获取最近添加到 ExploitDB 的漏洞列表。
  • 统计信息: 查看 ExploitDB 中按平台、类型和年份分布的漏洞统计数据。
  • 自动更新: 支持定期自动更新本地的 ExploitDB 数据,保持信息最新。

安装步骤

  1. 安装环境: 确保已安装 Node.js (v16 或更高版本) 和 npm (v7 或更高版本)。
  2. 克隆仓库:
    git clone https://github.com/Cyreslab-AI/exploitdb-mcp-server.git
    cd exploitdb-mcp-server
  3. 安装依赖:
    npm install
  4. 构建项目:
    npm run build
  5. 配置服务器:
    • 在项目根目录创建一个 '.env' 文件,可以参考 '.env.example' 文件。
    • 根据需要调整配置,例如数据存储目录、数据更新频率等。
  6. 初始化数据库: 首次运行前或需要更新数据时,执行此命令下载 ExploitDB 数据并构建本地数据库。
    npm run update-db
  7. 运行服务器:
    node build/index.js
    服务器将通过标准输入/输出 (stdio) 与 MCP 客户端通信。

服务器配置 (供MCP客户端使用)

为了让 MCP 客户端(如支持 MCP 的 AI 助手)能够连接并使用此服务器,您需要在客户端的 MCP 配置中添加对此服务器的引用。配置信息通常包含服务器的名称以及如何启动它的命令。

例如,在 MCP 客户端的配置文件中,您可能需要添加类似以下结构的配置项:

  • '服务器名称 (server_name)': 为此 ExploitDB 服务器指定一个唯一的标识符,例如 'mcp-exploitdb-server'。AI 助手在调用工具时会使用此名称来指定目标服务器。
  • '启动命令 (command)': 指定用于运行此 MCP 服务器可执行文件的命令,例如 'node'。
  • '命令参数 (args)': 指定传递给启动命令的参数,通常是服务器主程序的路径,例如 '/path/to/exploitdb-mcp-server/build/index.js'。请将 '/path/to/exploitdb-mcp-server/' 替换为您实际安装服务器的路径。

AI 助手将使用这些信息来启动并连接到 ExploitDB MCP 服务器。

基本使用方法 (供AI助手通过MCP客户端调用)

配置完成后,AI 助手即可通过 MCP 客户端调用此服务器提供的工具来访问 ExploitDB 数据。主要的工具及其用途如下:

  • 'search_exploits': 用于根据关键词、平台、类型、CVE ID、作者、日期范围或验证状态等条件搜索漏洞。您需要提供相应的搜索参数。
  • 'get_exploit': 用于获取特定 Exploit ID 对应的漏洞详细信息,包括可选的利用代码。您需要提供漏洞的数字 ID。
  • 'find_by_cve': 用于查找与特定 CVE ID 相关联的所有漏洞。您需要提供一个有效的 CVE ID。
  • 'get_recent_exploits': 用于获取最近添加的漏洞列表。可以指定返回的数量限制。
  • 'get_statistics': 用于获取数据库的统计数据,例如总漏洞数、按平台/类型/年份的分布等。

AI 助手会根据用户需求,调用相应的工具并提供所需的参数,服务器将返回查询结果。

信息

分类

网页与API