项目简介

Shodan MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它扩展了大型语言模型(LLM)的能力,使其能够访问 Shodan 网络搜索引擎的强大功能。通过此服务器,LLM 可以利用 Shodan API 查询网络设备信息、漏洞数据、域名解析等,从而在安全分析、威胁情报收集等任务中发挥更大的作用。

主要功能点

  • 网络侦察: 查询 IP 地址的详细信息,包括地理位置、开放端口、运行服务、SSL 证书等。
  • Shodan 搜索: 使用 Shodan 强大的搜索语法,检索连接到互联网的设备信息,支持高级过滤和结果统计。
  • 漏洞情报: 访问 Shodan CVEDB 漏洞数据库,查询 CVE 漏洞的详细信息,包括 CVSS 评分、EPSS 评分、受影响产品等。
  • DNS 操作: 进行域名到 IP 地址的正向解析和 IP 地址到域名的反向解析。
  • CPE 查找: 根据产品名称查找 Common Platform Enumeration (CPE) 条目,用于识别软件和硬件版本。
  • 产品 CVE 查找: 查找特定产品或 CPE 受影响的漏洞,支持按 KEV 状态、EPSS 评分排序和日期范围过滤。

安装步骤

  1. 安装 Node.js: 确保您的系统已安装 Node.js (v18 或更高版本)。
  2. 全局安装 Shodan MCP Server: 打开终端或命令提示符,运行以下命令进行全局安装:
    npm install -g @burtthecoder/mcp-shodan

服务器配置

要将 Shodan MCP Server 与 MCP 客户端(例如 Claude Desktop)连接,您需要配置客户端的 MCP 服务器设置。以下是 Claude Desktop 配置文件 'claude_desktop_config.json' 的配置示例:

{
  "mcpServers": {
    "shodan": {
      "command": "mcp-shodan",  // 启动服务器的命令,全局安装时使用 mcp-shodan
      "env": {
        "SHODAN_API_KEY": "YOUR_SHODAN_API_KEY"  // 您的 Shodan API 密钥,请替换为您的实际密钥
      }
    }
  }
}
  • 'server name': 'shodan' (您可以自定义服务器名称)
  • 'command': 'mcp-shodan' (全局安装后,可以直接使用 'mcp-shodan' 命令)
  • 'env': 环境变量配置
    • 'SHODAN_API_KEY': 必填项。您需要拥有一个有效的 Shodan API 密钥。请访问 Shodan 官网 注册并获取您的 API 密钥,并将其替换 'YOUR_SHODAN_API_KEY'。

配置文件位置:

  • macOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
  • Windows: '%APPDATA%\Claude\claude_desktop_config.json'

注意: 如果您选择从源代码运行服务器,请参考仓库 README.md 中的 "Alternative Setup (From Source)" 部分,并相应修改 'command' 和 'args' 配置。

基本使用方法

配置完成后,在支持 MCP 协议的 LLM 客户端中,您可以使用以下工具来访问 Shodan 的功能:

  • 'ip_lookup': 查询 IP 地址信息。
  • 'shodan_search': 进行 Shodan 设备搜索。
  • 'cve_lookup': 查询 CVE 漏洞信息。
  • 'dns_lookup': 进行 DNS 正向解析。
  • 'reverse_dns_lookup': 进行 DNS 反向解析。
  • 'cpe_lookup': 查找 CPE 信息。
  • 'cves_by_product': 查找产品相关的 CVE 漏洞。

您可以通过自然语言指示 LLM 调用这些工具,并提供相应的参数,例如:

  • "使用 ip_lookup 工具查询 IP 地址 8.8.8.8 的信息"
  • "使用 shodan_search 工具搜索 'apache server country:CN' 并返回最多 5 个结果"
  • "使用 cve_lookup 工具查询 CVE-2021-44228 的详细信息"

LLM 将根据您的指示调用相应的工具,并将 Shodan 返回的数据以结构化的形式呈现给您。

重要提示: 使用 Shodan API 需要有效的 API 密钥,并且部分高级功能可能需要付费订阅 Shodan 会员。请参考 Shodan 官方文档了解 API 使用限制和计费规则。

信息

分类

网页与API