golf-mcp/golf-scanner

GitHub: golf-mcp/golf-scanner

一款跨 IDE 的 MCP 服务器安全审计工具,可自动发现配置并执行 20 项安全检查,生成风险评分。

Stars: 0 | Forks: 0


🔍 Golf Scanner

跨 IDE 发现并审计 MCP 服务器


License PRs Support

📚 文档 · 🚀 快速开始 · ⛳ Golf

免费、开源的 CLI 工具,可发现您机器上的 MCP 服务器配置并运行安全检查以生成风险评分。单一二进制文件。零遥测。无需账户。 ## 快速开始 通过 Homebrew 安装: ``` brew install golf-mcp/tap/golf-scanner ``` 或者使用 Go: ``` go install github.com/golf-mcp/golf-scanner/cmd/golf-scanner@latest ``` 发现您的 MCP 服务器: ``` golf-scanner scan ``` 运行安全审计: ``` golf-scanner audit ``` ## 功能 Golf Scanner 是一个单一静态二进制文件(纯 Go 编写,3 个依赖项),它可以: 1. **发现** 跨 7 种 IDE 的 MCP 服务器配置 — Claude Code、Cursor、VS Code、Windsurf、Gemini CLI、Kiro 和 Antigravity 2. **运行 20 项安全检查** — 9 项离线(无网络)+ 11 项在线(查询 OSV、GitHub、npm、PyPI、OCI registries、MCP Registry) 3. **生成 0–100 的风险评分** 基于每个服务器,采用严重性加权评分和硬性上限 无需账户。可离线运行。零遥测。 ### 支持的 IDE Claude Code · Cursor · VS Code · Windsurf · Gemini CLI · Kiro · Antigravity ## 用法 ### 审计 发现服务器并运行带有风险评分的安全检查。 ``` golf-scanner audit ``` 跳过网络检查(离线模式): ``` golf-scanner audit --offline ``` 详细输出及修复建议: ``` golf-scanner audit --verbose ``` CI/CD 集成 — 如果发现高危或严重发现项则失败: ``` golf-scanner audit --fail-on high --json ``` | 标志 | 默认值 | 描述 | |------|---------|-------------| | `--offline` | `false` | 跳过网络检查 (OSV, GitHub, npm, PyPI, MCP Registry, OCI registries) | | `--format` | `table` | 输出格式:`table` 或 `json` | | `--json` | `false` | `--format json` 的简写 | | `--fail-on` | | 如果发现项达到或超过以下严重程度则退出码为 1:`note`、`medium`、`high`、`critical` | | `--verbose`, `-v` | `false` | 显示完整的发现详情,包括修复建议 | | `--quiet`, `-q` | `false` | 仅显示汇总表 | `--verbose` 和 `--quiet` 互斥。 ## 安全检查 | 检查项 | 检测内容 | 在线 | |-------|-----------------|--------| | 服务器类型 | 将服务器分类为包管理器、容器、二进制文件、脚本或 HTTP | | | 命令安全性 | 识别风险模式,包括权限提升和 Shell 注入威胁 | | | 凭证 | 在参数、URL 和环境变量中查找明文凭证 | | | 脚本位置 | 标记从不安全位置(如 `/tmp` 或主目录)运行的脚本 | | | 脚本权限 | 检测全局可写的脚本文件 | | | 二进制文件位置 | 评估可执行文件在系统路径和主目录中的放置情况 | | | 二进制文件权限 | 检测全局可写或组可写的二进制文件 | | | 容器隔离 | 标记 `--privileged` 模式、危险能力、主机命名空间共享 | | | 容器卷 | 标记危险的卷挂载 — 根文件系统、`/etc`、Docker socket | | | 注册列表 | 确认 MCP Registry 包含状态 | 是 | | 漏洞 | 查询 OSV.dev 以获取 npm/PyPI 包中已知的 CVE 和恶意软件 | 是 | | Typosquatting (误植域名) | 识别名称相似的包,表明存在恶意模仿 | 是 | | 分发情况 | 通过下载指标和包年龄评估采用度 | 是 | | 源码仓库 | 检查包是否链接到源码仓库 | 是 | | 无作用域变体 | 检查无作用域的 npm 对应项是否存在安全问题 | 是 | | GitHub 信任度 | 评估仓库信号,如活跃度、许可协议和贡献者数量 | 是 | | 容器镜像 | 检查镜像是否使用摘要固定 (`@sha256:`) | 是 | | 容器注册表 | 验证镜像是否存在,并通过摘要不匹配标记潜在的篡改 | 是 | | 容器签名 | 使用无密钥认证验证 cosign 签名 | 是 | | OAuth | 发现 OAuth/OIDC 配置。标记缺少认证的情况 | 是 | 有关每项检查的完整详情,请参阅 [安全检查参考](https://docs.golf.dev/scanner/security-checks)。 ## 评分 每个服务器获得一个 **0–100 的风险评分**: 1. 每项检查生成发现项;最严重的等级决定单项检查的分数(0–10) 2. 分数通过 **严重性加权平均** 进行合并(严重 10x、高 7.5x、中 5x、提示 1x) 3. 原始平均值缩放至 0–100 4. **硬性上限** 适用:任何严重发现项将分数上限设为 30,任何高危发现项将上限设为 59 5. **风险等级**:低 (≥60)、中 (>30)、高 (≤30) 有关完整的评分说明,请参阅 [理解结果](https://docs.golf.dev/scanner/understanding-results)。 ## 环境变量 | 变量 | 用途 | |----------|---------| | `GITHUB_TOKEN` | 可选。将 GitHub API 速率限制从 60 增加/小时 到 5,000 次/小时。 | | `GOLF_GITHUB_TOKEN` | 可选。如果未设置 `GITHUB_TOKEN` 时的后备选项。 | 大多数扫描不需要令牌。扫描器对每个唯一仓库发起约 3 次 GitHub API 调用(元数据、提交、贡献者)并缓存结果,因此只有当您有 20+ 个服务器指向不同的 GitHub 仓库时,才会达到未认证限制。 ## 退出码 | 代码 | 含义 | |------|---------| | 0 | 成功 | | 1 | 无参数、未知命令、超过 `--fail-on` 阈值或标志冲突 | | 2 | JSON 错误或无效的 `--fail-on` 值 | ## Golf **Scanner = 可见性**(存在什么)。**[Golf](https://golf.dev) = 治理**(允许什么、记录什么以及保护什么)。 Golf Scanner 为您提供时间点快照。完整的 Golf 平台将其扩展为持续治理: - **Golf Inventory** — 持续的 MCP 发现,始终保持最新,而非时间点扫描 - **Golf Gateway** — 针对每个服务器、每个团队、每种数据类型的策略执行。PII 脱敏和工具级访问控制 - **审计追踪** — 每个连接的不可变日志,预映射到 SOC 2、ISO 27001、NIST AI RMF - **多工具支持** — 适用于所有 AI 工具(Cursor、Claude Code、Copilot、ChatGPT),无需改变开发者工作流 | | Golf Scanner (免费) | Golf | |---|-------------------|------| | **发现** | 7 种 IDE,单机,时间点 | 持续 — 所有 IDE,所有机器,所有团队 | | **安全检查** | 9 项离线 + 11 项在线 | 所有扫描器检查 + 额外的威胁检测 | | **审计追踪** | CLI 输出 | 不可变追踪,预映射到 SOC 2、ISO 27001、NIST AI RMF | | **执行** | 无 | 针对服务器/团队/数据类型的策略执行,PII 脱敏,工具级访问控制 | | **监控** | 一次性扫描 | 始终保持最新 — 立即检测到新服务器 | | **部署** | 单一二进制文件 | 本地部署、混合或云端。数据不会离开您的环境。 | 了解更多,请访问 [golf.dev](https://golf.dev) 或阅读 [文档](https://docs.golf.dev/gateway/overview)。 ## 许可证 Apache 2.0 — 详见 [LICENSE](LICENSE)。
Golf 团队用 ❤️ 制作
标签:CISA项目, Claude, Cursor, CVE检测, EVTX分析, EVTX分析, Go语言, IDE插件, Kiro, LNA, MCP服务器, VS Code, Windsurf, 云安全监控, 动态分析, 安全助手, 文档结构分析, 日志审计, 程序破解, 网络安全, 隐私保护, 静态分析