返回 MCP 目录
public公开dns本地运行

nessus-mcp-server

一个基于MCP协议的Nessus漏洞扫描服务器,支持漏洞扫描、管理、分析及模拟测试功能

article

README

🚀 Nessus MCP 服务器

Nessus MCP 服务器是一个用于与 Tenable Nessus 漏洞扫描程序交互的 Model Context Protocol (MCP) 服务器。它允许 AI 助手通过 MCP 协议执行漏洞扫描和分析,为安全检测工作提供了便利。

✨ 主要特性

  • 漏洞扫描:可启动并监控针对指定目标的漏洞扫描,及时发现潜在安全风险。
  • 扫描管理:能够列出、跟踪并检索已完成扫描的结果,方便对扫描情况进行管理和查看。
  • 漏洞分析:支持搜索并获取特定漏洞的详细信息,有助于深入了解漏洞情况。
  • 模拟模式:具备完全功能的模拟模式,无需 Nessus API 密钥即可进行测试,降低了测试门槛。

📦 安装指南

先决条件

  • Node.js 16 或更高版本
  • TypeScript(用于开发)

从源代码构建

  1. 克隆仓库:
git clone https://github.com/Cyreslab-AI/nessus-mcp-server.git
cd nessus-mcp-server
  1. 安装依赖项:
npm install
  1. 构建服务器:
npm run build

💻 使用示例

在模拟模式下运行

默认情况下,服务器以模拟模式运行,不需要 Nessus API 密钥:

node build/index.js

与 Nessus API 连接

要连接到真实的 Nessus 实例,请设置以下环境变量:

NESSUS_URL=https://your-nessus-instance:8834
NESSUS_ACCESS_KEY=your-access-key
NESSUS_SECRET_KEY=your-secret-key

然后运行服务器:

node build/index.js

与 Claude for Desktop 使用

要将此服务器与 Claude for Desktop 一起使用:

  1. 编辑您的 Claude for Desktop 配置文件:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. 添加服务器配置:
{
  "mcpServers": {
    "nessus": {
      "command": "node",
      "args": ["/path/to/nessus-mcp-server/build/index.js"],
      "env": {
        "NESSUS_URL": "https://your-nessus-instance:8834",
        "NESSUS_ACCESS_KEY": "your-access-key",
        "NESSUS_SECRET_KEY": "your-secret-key"
      }
    }
  }
}

在模拟模式下,可以省略 env 部分。

示例交互

基础用法

# 启动扫描
start_scan:
  target: 192.168.1.1
  scan_type: basic-network-scan

# 获取扫描结果
get_scan_results:
  scan_id: scan-1234567890

# 搜索漏洞
search_vulnerabilities:
  keyword: log4j

📚 详细文档

工具

服务器提供的工具如下: | 工具名称 | 描述 | | ---- | ---- | | list_scan_templates | 列出可用的 Nessus 扫描模板 | | start_scan | 启动针对目标的新漏洞扫描 | | get_scan_status | 检查运行中扫描的状态 | | get_scan_results | 获取已完成扫描的结果 | | list_scans | 列出所有扫描及其状态 | | get_vulnerability_details | 获取特定漏洞的详细信息 | | search_vulnerabilities | 搜索关键字相关的漏洞 |

🔧 技术细节

项目结构

  • src/index.ts:服务器主入口点
  • src/nessus-api.ts:带有模拟回退的 Nessus API 客户端
  • src/mock-data.ts:测试用的模拟漏洞数据
  • src/tools/:工具实现
  • src/utils/:实用函数

添加新工具

  1. 在适当的文件中定义工具架构和处理程序 src/tools/
  2. src/index.ts 中导入并注册工具

📄 许可证

本项目采用 MIT 许可证。

⚠️ 免责声明

此服务器与 Tenable 或其 Nessus 标记没有关联或得到认可。Nessus 是 Tenable, Inc. 的商标。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端