返回市场
哨兵-mcp-服务器

哨兵-mcp-服务器

作者:Cyreslab-AI32 星标更新:2025-06-29

项目介绍

Logo

Shodan MCP 服务器

一个提供对 Shodan API 功能和 CVE 数据库访问的模型上下文协议(MCP)服务器,允许AI助手查询关于互联网连接设备、服务和漏洞的信息。

特性

网络情报

  • 主机信息:获取特定IP地址的详细信息
  • 搜索能力:在Shodan数据库中搜索设备和服务
  • 网络扫描:扫描网络范围(CIDR表示法)中的设备
  • SSL证书信息:获取域的SSL证书详情
  • IoT设备搜索:查找特定类型的IoT设备

漏洞情报

  • CVE查询:获取特定漏洞的详细信息
  • 漏洞搜索:使用高级过滤器(产品、KEV状态、EPSS评分)搜索CVE
  • CPE信息:获取产品的通用平台枚举数据
  • 最新漏洞:访问最新的CVE和已知被利用的漏洞
  • 漏洞预测:根据EPSS漏洞预测评分排序CVE

安装

  1. 克隆仓库:

    git clone https://github.com/Cyreslab-AI/shodan-mcp-server.git
    cd shodan-mcp-server
    
  2. 安装依赖:

    npm install
    
  3. 构建服务器:

    npm run build
    
  4. 设置你的Shodan API密钥:

    export SHODAN_API_KEY="your-api-key-here"
    
  5. 启动服务器:

    npm start
    

MCP集成

此服务器可以与Claude或其他兼容MCP的AI助手集成。要将其添加到Claude Desktop或Claude.app:

  1. 将服务器添加到您的MCP设置中:

    {
      "mcpServers": {
        "shodan": {
          "command": "node",
          "args": ["/path/to/shodan-mcp-server/build/index.js"],
          "env": {
            "SHODAN_API_KEY": "your-api-key-here"
          }
        }
      }
    }
    
  2. 重启Claude以加载新的MCP服务器。

可用工具

搜索与主机信息工具

get_host_info

获取特定IP地址的详细信息。

参数:

  • ip(必需):要查询的IP地址
  • max_items(可选):数组中包含的最大项目数(默认值:5)
  • fields(可选):结果中包含的字段列表(例如:['ip_str', 'ports', 'location.country_name'])

search_shodan

在Shodan数据库中搜索设备和服务。

参数:

  • query(必需):Shodan搜索查询(例如:'apache country:US')
  • page(可选):结果分页的页码(默认值:1)
  • facets(可选):搜索结果中包含的面列表(例如:['country', 'org'])
  • max_items(可选):数组中包含的最大项目数(默认值:5)
  • fields(可选):结果中包含的字段列表(例如:['ip_str', 'ports', 'location.country_name'])
  • summarize(可选):是否返回结果摘要而不是完整数据(默认值:false)

get_host_count

获取匹配搜索查询的主机数量而不消耗查询信用。

参数:

  • query(必需):用于计数主机的Shodan搜索查询
  • facets(可选):计数结果中包含的面列表(例如:['country', 'org'])

scan_network_range

扫描网络范围(CIDR表示法)中的设备。

参数:

  • cidr(必需):网络范围的CIDR表示法(例如:192.168.1.0/24)
  • max_items(可选):结果中包含的最大项目数(默认值:5)
  • fields(可选):结果中包含的字段列表(例如:['ip_str', 'ports', 'location.country_name'])

search_iot_devices

搜索特定类型的IoT设备。

参数:

  • device_type(必需):要搜索的IoT设备类型(例如:'webcam', 'router', 'smart tv')
  • country(可选):限制搜索的国家代码(例如:'US', 'DE')
  • max_items(可选):结果中包含的最大项目数(默认值:5)

SSL与证书工具

get_ssl_info

获取域的SSL证书信息。

参数:

  • domain(必需):要查询SSL证书的域名(例如:example.com)

DNS工具

dns_lookup

使用DNS查询解析主机名到IP地址。

参数:

  • hostnames(必需):要解析的主机名列表(例如:['google.com', 'facebook.com'])

reverse_dns_lookup

使用反向DNS查询获取IP地址的主机名。

参数:

  • ips(必需):要查询的IP地址列表(例如:['8.8.8.8', '1.1.1.1'])

get_domain_info

获取全面的域名信息,包括子域和DNS记录。

参数:

  • domain(必需):要查询的域名(例如:'google.com')
  • history(可选):包含历史DNS数据(默认值:false)
  • type(可选):DNS记录类型过滤器(A, AAAA, CNAME, NS, SOA, MX, TXT)
  • page(可选):分页的页码(默认值:1)

搜索实用工具

list_search_facets

列出可用于Shodan查询的所有可用搜索面。

**参数:**无

list_search_filters

列出可用于Shodan查询的所有可用搜索过滤器。

**参数:**无

parse_search_tokens

解析搜索查询以理解正在使用的哪些过滤器和参数。

参数:

  • query(必需):要解析和分析的Shodan搜索查询

基础设施工具

list_ports

列出Shodan在网络上爬取的所有端口。

**参数:**无

list_protocols

列出执行按需互联网扫描时可以使用的所有协议。

**参数:**无

CVE与漏洞工具

get_cve_info

获取特定CVE的详细信息。

参数:

  • cve_id(必需):要查询的CVE ID(例如:'CVE-2021-44228')

search_cves

使用各种过滤器搜索漏洞。

参数:

  • cpe23(可选):要搜索的CPE 2.3字符串(例如:'cpe:2.3:a:apache:log4j:*')
  • product(可选):要搜索漏洞的产品名称(例如:'apache', 'windows')
  • is_kev(可选):仅过滤已知被利用的漏洞
  • sort_by_epss(可选):按EPSS评分排序结果(漏洞预测评分系统)
  • start_date(可选):用于过滤CVE的开始日期(YYYY-MM-DD格式)
  • end_date(可选):用于过滤CVE的结束日期(YYYY-MM-DD格式)
  • limit(可选):要返回的结果最大数量(默认值:10)
  • skip(可选):用于分页跳过的结果数量(默认值:0)

get_cpes

获取产品的通用平台枚举(CPE)信息。

参数:

  • product(可选):要搜索的产品名称(例如:'apache', 'windows')
  • vendor(可选):按供应商名称过滤(例如:'microsoft', 'apache')
  • version(可选):按版本过滤(例如:'2.4.1')
  • limit(可选):要返回的结果最大数量(默认值:10)
  • skip(可选):用于分页跳过的结果数量(默认值:0)

get_newest_cves

从CVE数据库获取最新的漏洞。

参数:

  • limit(可选):要返回的结果最大数量(默认值:10)

get_kev_cves

从CISA获取已知被利用的漏洞(KEV)。

参数:

  • limit(可选):要返回的结果最大数量(默认值:10)

get_cves_by_epss

按EPSS评分排序CVE(漏洞预测评分系统)。

参数:

  • limit(可选):要返回的结果最大数量(默认值:10)

账户与实用工具

get_api_info

获取有关您的API计划的信息,包括信用额度和限制。

**参数:**无

get_account_profile

获取账户资料信息,包括会员状态和信用额度。

**参数:**无

get_my_ip

获取您当前的IP地址,如互联网所见。

**参数:**无

可用资源

  • shodan://host/{ip}:关于特定IP地址的信息

API限制

一些Shodan API端点需要付费会员。以下功能仅适用于付费Shodan API密钥:

  • 搜索功能(search_shodan, scan_network_range, get_ssl_info, search_iot_devices, get_host_count, get_domain_info)
  • 网络扫描
  • SSL证书查询
  • IoT设备搜索

注意:CVE数据库功能(get_cve_info, search_cves, get_cpes, get_newest_cves, get_kev_cves, get_cves_by_epss)完全免费,不需要付费的Shodan订阅。

许可证

MIT

开发者

Cyreslab.ai

引用

如果您在研究或出版物中使用了这个项目,请按照以下方式引用它:

author = {Bassem Abidi and Moudather Chelbi},
title = {Shodan MCP 服务器},
year = {2025},
howpublished = {https://github.com/Cyreslab-AI/shodan-mcp-server},
note = {访问日期:2025-06-29}