Geiger: 为机器安全盘点 AI Agent 和 MCP Server
Geiger 提供了一个单命令功能,用于盘点机器上安装的每一个 AI agent、Model Context Protocol (MCP) server、插件和 AI 扩展。它能够识别这些工具可以访问哪些内容——例如文件系统、网络或存储的凭据——从而让用户在 AI agent 驱动程序迅速激增的时代,能够了解其机器的攻击面。
核心功能与安全模型
Geiger 作为一个只读扫描器运行,通过分析已知的配置位置和目录来识别 AI 工具。它不会执行它发现的 agent,也不会监控它们的运行时行为;相反,它会根据它们的配置映射它们被授予的潜在能力。
三项安全承诺
为了确保该工具本身不会成为安全风险,Geiger 遵循三项严格的约束:
- 只读操作:除非用户通过标志显式请求 JSON 或 HTML 报告,否则该工具绝不会写入磁盘。
- 零遥测:没有任何数据离开机器。该工具没有外部端点,也不会跟踪使用统计数据。
- 凭据保护:Geiger 通过“形状”识别凭据的存在(例如,识别名为
API_KEY的键),但它绝不会输出凭据的实际值。
检测能力
Geiger 跨多个生态系统进行扫描,以提供系统上 AI 足迹的全面视图。每个发现项都会标记其来源(registry、git、local script 等)及其暴露程度。
支持的生态系统
- Claude Code & MCP Hosts:检测 Claude Desktop、Cursor、Windsurf、VS Code、Cline、Roo Code、Continue 和 Zed 的全局和项目级 MCP server、钩子和插件。
- 通用 AI Agents:识别 Aider、Open Interpreter、GitHub Copilot CLI、Goose、LM Studio、Ollama 以及来自 Gemini、Grok 和 DeepSeek 的各种 CLI 工具的安装情况。
- 编辑器与浏览器扩展:扫描 VS Code、Cursor 和主流浏览器(Chrome、Edge、Brave、Firefox)中的 AI 扩展,包括它们被授予的权限。
- IDE 集成:识别 JetBrains IDEs 中的 AI Assistant 和 MCP 设置。
暴露标签
发现项根据 agent 被允许执行的操作进行分类,使用如下标签:
EXECUTES:agent 可以执行机器上的代码。BROAD-FILESYSTEM:agent 对文件系统具有广泛的访问权限。HOLDS-SECRETS:agent 的配置中包含凭据。NETWORK/BROAD-WEB:agent 具有网络或广泛的 Web 访问权限。
使用与集群管理
Geiger 以无依赖的 JavaScript 包形式分发,可以通过 npx geiger-scan 在无需安装的情况下运行。
运行模式
- 基线与漂移检测:用户可以将机器状态保存到 JSON 文件(
--json baseline.json)并在随后的扫描中通过--diff标志使用。当结合使用--strict时,如果引入了任何新能力(如代码执行),工具将以代码 2 退出,使其能够作为机器安全的“lockfile”。 - 报告:除了终端输出外,Geiger 还会生成自包含的 HTML 报告,其中包含针对每个发现项的通俗易懂的修复指导。
- 企业级部署:对于托管服务提供商 (MSPs) 或 IT 部门,Geiger 可以作为计划任务运行,将 JSON 报告写入中央共享目录,从而实现对组织内“影子 AI” (Shadow AI) 的监控。
技术局限性
Geiger 是一个盘点工具,而不是完整的安全审计。其有效性受限于以下因素:
已知路径:它仅读取已知的配置位置;位于非标准路径、容器或 WSL(当从 Windows 扫描时)中的 agent 并不被检测。
静态分析:它读取的是配置,而不是运行时行为。它无法确定一个插件实际做了什么,只能确定它被允许做什么。
没有恶意性检测:它识别包的来源以及它可以访问的内容,但它并不判断包是否具有恶意性。
社区洞察
Hacker News 上的用户强调了在运行 AI agent 时进行隔离的重要性。一位贡献者指出:
You really want to run these in a way so they cannot touch your system drive/general filesystem that you use to do real work on. Even SOTA models at the end of their context limit behave REALLY illogical and does mistakes frequently.
其他讨论还强调了 Geiger 利用来跟踪“影子 AI” (Shadow AI)——即在企业环境中未经授权使用 AI 工具的可能性。
Sources
相关
- Dispatch
- 项目
- 项目
- 项目
- 项目