Geiger: マシンセキュリティのための AI Agent と MCP サーバーのインベントリ作成
Geiger は、マシンにインストールされているすべての AI agent、Model Context Protocol (MCP) サーバー、プラグイン、および AI 拡張機能を、単一のコマンドでインベントリ化します。これらのツールが何にアクセスできるか(ファイルシステム、ネットワーク、または保存された認証情報など)を特定することで、ユーザーは、急速に普及する AI agent harness の時代において、自身のマシンの攻撃対象領域を理解することができます。
コア機能とセキュリティモデル
Geiger は、既知の設定場所とディレクトリを分析することで AI ツールを特定する、読み取り専用のスキャナーとして機能します。検出された agent を実行したり、その実行時の動作を監視したりすることはありません。代わりに、設定に基づいて、それらに付与されている潜在的な権限をマッピングします。
3つのセキュリティ・プロミス
ツール自体がセキュリティリスクにならないよう、Geiger は 3 つの厳格な制約を遵守しています:
- Read-only Operation: ユーザーがフラグを介して JSON または HTML レポートを明示的に要求しない限り、ツールはディスクに書き込みを行いません。
- Zero Telemetry: データがマシンから外部へ送信されることはありません。ツールには外部エンドポイントがなく、使用統計を追跡しません。
- Secrets Protection: 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 サーバー、フック、およびプラグインを検出します。
- General AI Agents: Aider、Open Interpreter、GitHub Copilot CLI、Goose、LM Studio、Ollama、および Gemini、Grok、DeepSeek からのさまざまな CLI ツールを特定します。
- Editor & Browser Extensions: VS Code、Cursor、および主要なブラウザ(Chrome、Edge、Brave、Firefox)における AI 拡張機能をスキャンし、付与された権限も確認します。
- IDE Integrations: JetBrains IDE 内の AI Assistant および MCP 設定を特定します。
露出ラベル
検出結果は、agent が許可されている操作に基づいて、以下のラベルを使用してカテゴリ分けされます:
EXECUTES: agent はマシン上でコードを実行できます。BROAD-FILESYSTEM: agent はファイルシステムに広範なアクセス権を持っています。HOLDS-SECRETS: agent の設定に認証情報が含まれています。NETWORK/BROAD-WEB: agent はネットワークまたは広範な Web アクセス権を持っています。
使用方法とフリート管理
Geiger は、依存関係のない JavaScript パッケージとして配布されており、npx geiger-scan を介してインストールなしで実行できます。
運用モード
- Baseline and Drift Detection: ユーザーは、マシンの状態を JSON ファイルに保存できます(
--json baseline.json)。その後、--diffフラグを使用して、次回のスキャンで差分を検出できます。--strictと組み合わせると、新しい権限(コード実行など)が導入された場合にコード 2 で終了し、マシンのセキュリティのための「ロックファイル」として機能させることが可能です。 - Reporting: ターミナル出力に加えて、Geiger は、各検出結果に対して平易な言葉による修正ガイダンスを含む、自己完結型の HTML レポートを生成します。
- Enterprise Deployment: 管理サービスプロバイダー (MSP) または IT 部門向けに、Geiger はスケジュールされたタスクとして実行し、JSON レポートを中央共有フォルダに書き出すことで、組織全体における「Shadow AI」の監視が可能になります。
技術的な制限事項
Geiger はインベントリ作成ツールであり、完全なセキュリティ監査ツールではありません。その効果は以下の事項によって制限されます:
- Known Paths: 既知の設定場所のみを読み取ります。標準外のパス、コンテナ、または WSL (Windows からスキャンする場合) 内の agent は検出されません。
- Static Analysis: 設定を読み取るものであり、実行時の動作をではありません。プラグインが実際に何をしたかではなく、何が許可されているかのみを判断できます。
- No Maliciousness Detection: パッケージがどこから来たのか、何にアクセスできるかのみを識別し、パッケージが有害であるかどうかは判断しません。
コミュニティの洞察
Hacker News のユーザーは、AI agent を実行する際の隔離(isolation)の重要性を強調しています。ある貢献者は次のように述べています:
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 がガバナンス企業によって「Shadow AI」— 企業環境内での AI ツールへの無許可の利用—を追跡するために使用される可能性が強調されています。
Sources
関連
- Dispatch
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト