安全协议服务器

一个提供AI助手访问Sophos Central统一云安全管理平台的模型上下文协议服务器,用于管理端点、调查警报、分析EDR/XDR检测、运行Live Discover查询和审计安全策略。

  • by solomonneas
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 solomonneas/sophos-mcp

使用说明

Sophos中央MCP服务器

A. 模型上下文协议(MCP) 为AI助手提供访问权限的服务器 Sophos Central,统一的云安全管理平台。管理端点、调查警报、分析EDR/XDR检测、运行实时发现查询和审核安全策略。

特性

端点

  • 按主机名、IP、操作系统、运行状况列出、搜索和检查端点
  • 事件响应的网络隔离和非隔离
  • 按需扫描触发
  • 软件清单检索

警报

  • 按严重性、类别、产品、日期范围列出和过滤警报
  • 确认并解决警报,并采取相应措施
  • 查看每个警报的可用响应操作

EDR/XDR检测

  • 使用MITRE ATT&CK技术映射列出检测结果
  • 威胁案例管理(分组相关检测)
  • 检测与病例相关性

安全事件

  • 按类型、严重性、端点、日期范围搜索事件
  • 事件类型目录(恶意软件、PUA、网络过滤器等)
  • 管理员审核日志访问

政策

  • 列出端点、服务器和防火墙策略
  • 检查单个策略配置
  • 审查全球和特定政策的除外责任

租户管理

  • 多租户列表(MSP/合作伙伴视图)
  • 租户详细信息和许可证信息
  • 总体租户安全健康评分

实时发现(osquery)

  • 在端点上执行实时发现查询
  • 保存查询库管理
  • 查询结果检索
  • 查询类别浏览

建筑

┌────────────────────────────────────────┐
│           MCP Client (LLM)             │
└──────────────┬─────────────────────────┘
               │ MCP Protocol (stdio)
┌──────────────▼─────────────────────────┐
│          sophos-mcp server             │
│                                        │
│  ┌──────────┐  ┌────────────────────┐  │
│  │ Prompts  │  │    Resources       │  │
│  │ 4 guides │  │ queries, policies, │  │
│  │          │  │ MITRE mappings     │  │
│  └──────────┘  └────────────────────┘  │
│                                        │
│  ┌──────────────────────────────────┐  │
│  │            Tools                  │  │
│  │  endpoints │ alerts │ detections  │  │
│  │  events │ policies │ tenants     │  │
│  │  live-discover                    │  │
│  └──────────────┬───────────────────┘  │
│                 │                       │
│  ┌──────────────▼───────────────────┐  │
│  │      Sophos Central API Client   │  │
│  │      (OAuth2 + REST)             │  │
│  └──────────────┬───────────────────┘  │
└──────────────────┼─────────────────────┘
                   │ HTTPS
┌──────────────────▼─────────────────────┐
│       Sophos Central Platform API      │
│  https://api.central.sophos.com        │
└────────────────────────────────────────┘

安装

git clone https://github.com/solomonneas/sophos-mcp.git
cd sophos-mcp
npm install
npm run build

配置

Sophos Central使用带有客户端凭据的OAuth2。设置环境变量:

export SOPHOS_CLIENT_ID="your-client-id"
export SOPHOS_CLIENT_SECRET="your-client-secret"
export SOPHOS_TENANT_ID="your-tenant-id"   # optional for single-tenant

或者使用 .env 文件:

SOPHOS_CLIENT_ID=your-client-id
SOPHOS_CLIENT_SECRET=your-client-secret
SOPHOS_TENANT_ID=your-tenant-id

正在获取API凭据

  1. 登录到 Sophos Central
  2. 首选 全局设置>API凭据管理
  3. 点击 添加凭据 并分配角色
  4. 复制客户端ID和客户端密码

MCP客户端配置

克劳德桌面版

{
  "mcpServers": {
    "sophos": {
      "command": "node",
      "args": ["path/to/sophos-mcp/dist/index.js"],
      "env": {
        "SOPHOS_CLIENT_ID": "your-client-id",
        "SOPHOS_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

龙虾

添加到您的 openclaw.json:

{
  "mcp": {
    "servers": {
      "sophos": {
        "type": "stdio",
        "command": "node",
        "args": ["/path/to/sophos-mcp/dist/index.js"],
        "env": {
          "SOPHOS_CLIENT_ID": "your-client-id",
          "SOPHOS_CLIENT_SECRET": "your-client-secret"
        }
      }
    }
  }
}

工具参考

工具 说明
list_endpoints 按主机名、IP、运行状况、操作系统、组搜索端点
get_endpoint 包含代理信息和产品的完整端点详细信息
isolate_endpoint 网络隔离端点(事件响应)
unisolate_endpoint 删除网络隔离
scan_endpoint 触发按需扫描
get_endpoint_software 列出端点上安装的软件
list_alerts 获取具有严重性/类别/产品筛选器的警报
get_alert 带有描述的完整警报详细信息
acknowledge_alert 将警报标记为已确认
resolve_alert 解决/关闭警报并采取行动
get_alert_actions 列出可用的响应操作
list_detections 带过滤器的EDR/XDR检测
get_detection 通过MITRE ATT&CK映射进行全面检测
get_threat_cases 分组相关检测
get_case_detections 威胁案例中的所有检测
update_case_status 更新威胁案例状态
search_events 按类型/严重性/日期搜索安全事件
get_event 完整活动详情
list_event_types 可用事件类型目录
get_audit_logs 管理员审计跟踪
list_policies 列出端点/服务器/防火墙策略
get_policy 完整策略配置
get_policy_settings 策略中的特定设置
list_exclusions 全球和特定政策除外责任
list_tenants 列出受管理租户(MSP视图)
get_tenant 租户详细信息和许可证信息
get_tenant_health 总体租户安全健康评分
run_query 在端点上执行实时发现查询
list_saved_queries 列出已保存的实时发现查询
get_query_results 检索已完成的查询结果
list_query_categories 可用查询类别

实时发现查询示例

-- Running processes
SELECT pid, name, path, cmdline, start_time FROM processes WHERE name = 'suspicious.exe';

-- Listening ports (non-standard)
SELECT pid, port, address, protocol FROM listening_ports WHERE port NOT IN (80, 443, 22);

-- Scheduled tasks
SELECT name, action, path, enabled FROM scheduled_tasks WHERE enabled = 1;

-- Installed software from unknown publishers
SELECT name, version, publisher FROM programs WHERE publisher LIKE '%unknown%';

-- Active network connections to suspicious port
SELECT pid, remote_address, remote_port, state FROM socket_events WHERE remote_port = 4444;

-- File hash lookup
SELECT path, sha256 FROM hash WHERE path = '/usr/bin/suspicious';

-- Recently modified executables
SELECT path, filename, size, mtime FROM file WHERE path LIKE '/tmp/%' AND filename LIKE '%.exe';

提示

提示 描述
investigate-endpoint 指导性终点调查工作流程
threat-hunt 通过Live Discover跨端点搜索IOC
incident-response 逐步IR:遏制、调查、补救
health-audit 审查租户/端点安全状况

资源

URI 描述
sophos://live-discover-queries 内置Live Discover查询库
sophos://policy-reference 策略设置参考
sophos://mitre-mappings MITRE ATT&CK技术映射

发展

npm run build    # Compile TypeScript
npm run dev      # Watch mode
npm run test     # Run tests
npm run lint     # Lint check

许可证

麻省理工学院