テクニカルガイド
AIエージェントセキュリティ:実践的な制御チェックリスト

AIエージェントセキュリティとは、コンテキストを読み取り、ツールを選択し、複数のステップにわたって動作できるモデルを制御するシステムです。安全な設計では、モデルの出力、取得されたコンテンツ、およびツールの結果が誤っている、あるいは悪意のあるものである可能性があることを前提としています。アクセスを制限し、すべての動作を検証し、不確実性を可視化し、重大な変更に対する責任を人間に負わせます。
Ottermindは、接続された作業に対しても同様の境界優先のアプローチを適用します。ソースコンテキストと成果物はレビュー対象となりますが、結果として生じるアクションは権限と人間の承認の対象となります。これはワークスペースのオプションであり、組織のセキュリティレビューの代替となるものではありません。
調査と開示: このチェックリストは、2026年9月3日にレビューされたNIST AIリスク管理フレームワーク、OWASP LLM出願のためのトップ10、およびAnthropic エージェント安全ガイダンスに基づいています。
5つのセキュリティ境界
| 境界 | 主なリスク | 必要な制御 |
|---|---|---|
| ID | ユーザーまたはテナントのコンテキストが間違っています | 強力なIDおよびテナントチェック |
| 取得 | 漏洩、古い、または不正なコンテキスト | 権限を考慮した取得と来歴管理 |
| ツール | 過剰または不正な操作 | スキーマの限定、検証、タイムアウト |
| ランタイム | コマンド、ファイル、またはネットワークの過剰アクセス | サンドボックス、分離、および送信ポリシー |
| 操作 | サイレントエラーまたは未レビューの変更 | トレース、アラート、承認、およびロールバック |
セキュリティはワークフロー全体に分散されています。エージェントに「注意してください」と促す最後のプロンプトは、セキュリティ制御ではありません。
機能設計前の脅威モデル
エージェントが監視できるもの、変更できるもの、そしてミスによって利益を得る可能性のある人物を書き出してください。好奇心旺盛なユーザー、侵害されたコネクタ、取得したドキュメント内の悪意のあるテキスト、予期しないデータを返すツール、書き込み中のサービス停止などを想定してください。それぞれの脅威に対して、予防策、検出シグナル、および復旧アクションを記述してください。この簡略化された脅威モデルによって、最もリスクの高い機能はモデル自体ではなく、過度に広範なコネクタであることが明らかになる場合がよくあります。
IDとテナントの分離
実行開始前にユーザー認証を行い、そのIDに対してすべてのデータ取得とツール呼び出しを承認してください。モデルから見えるプロジェクトIDが信頼できると想定しないでください。データを所有するサービスにおいて、テナント、プロジェクト、ロール、およびレコードレベルの権限を確認してください。マルチユーザーワークスペースの場合は、テナント間リクエストを明示的にテストし、ログに禁止されているファイル名、スニペット、またはツール引数が含まれていないことを確認してください。
データ取得の整合性
データ取得システムは、データ漏洩、古いレコードの返送、またはドキュメントに埋め込まれた指示の顕在化を引き起こす可能性があります。各チャンクに、ソース識別子、所有者、有効日、および権限決定などの来歴情報を保存してください。最新の信頼できる情報源レコードを優先し、競合を顕在化してください。HTML、PDF、電子メール、および発行コメントは、指示ではなくデータとして扱ってください。取得した段落に指示があるからといって、モデルが自身にアクセス権を付与することは決してあってはなりません。
ツールとランタイムの分離
汎用シェルや無制限のHTTPクライアントではなく、ビジネスインテントを表現する専用のツールを使用する。引数の検証、クォータの適用、タイムアウトの設定、書き込みの冪等化を行う。使い捨てファイルシステムと制限されたアウトバウンドを備えたサンドボックス内でコードまたはブラウザ操作を実行する。開発用認証情報と本番用認証情報を分離し、実行後に有効期限の短いトークンをローテーションする。
人間による承認設計
承認プロセスでは、提案されたアクション、対象、根拠となる証拠、副作用、および代替案を表示する必要があります。「承認」ボタンは、無関係な書き込み処理を隠蔽してはなりません。外部通信、削除、支払い、アクセス権限の変更、およびポリシーの更新については、より厳格なレビューを要求します。承認者、タイムスタンプ、決定内容、および編集内容をすべて保存し、再試行時にチェックポイントをサイレントにバイパスできないようにします。
レッドチームテストケース
ドキュメントへのプロンプト挿入、アクセス権限のないユーザー、不正なJSONを返すツール、有効期限切れの認証情報、スキーマの変更、重複再試行、送信または削除要求を含む、小規模な回帰テストセットを作成します。期待される結果は必ずしもタスクの完了ではなく、安全な拒否、エスカレーション、および有用なエラーも有効な結果です。プロンプト、ツール、コネクタ、またはモデルのバージョンが変更されるたびに、このテストセットを実行します。
セキュリティ運用チェックリスト
- モデル、ツール、コネクタ、データストアのインベントリを維持する。
- コネクタのスコープと特権ロールを定期的に確認する。
- ツールの異常な使用量、プロジェクト間のデータ取得、およびブロックされたアクションについてアラートを発する。
- 不要なシークレットを保存することなく、インシデント調査に必要な期間、トレースを保持する。
- アクセス権の取り消し、実行の停止、およびソースレコードの復元方法を文書化する。
- 安全でない提案や漏洩したコンテキストをユーザーが明確に報告できる方法を提供する。
エージェントステージへの制御マッピング
セキュリティレビューは、エージェントのループに沿って行うことで容易になります。インテーク段階では、ID、目的、および許可されたデータを検証します。取得段階では、権限を適用し、来歴を添付します。推論段階では、出力スキーマを制約し、不確実性をマークします。ツール呼び出しの前に、引数と副作用を検証します。呼び出し後には、結果を検証し、遷移を記録します。完了前には、適切なレビュー担当者を要求し、最終ステータスを永続化します。このステージごとのマッピングにより、チームはセキュリティを、それ以外は制限のないエージェントを囲む単一のゲートウェイとして扱うことを防ぎます。
サプライチェーンとコネクタのリスク
エージェントの有効な機能には、SDK、プラグイン、MCPサーバー、ブラウザ拡張機能、プロンプトテンプレート、およびコネクタスコープが含まれます。これらの依存関係をインベントリし、本番環境に移行する前に更新内容をレビューします。可能な限りバージョンを固定し、パッケージに署名または検証を行い、テスト認証情報を顧客データとは別に保管します。ドライブ全体を読み取ることができるコネクタは、たとえモデル自体が正しく設定されていても、モデル提供元よりも多くのリスクを生み出す可能性があります。
有用なセキュリティレビューの内容
想定されるワークフロー、データ分類、ID、ツール、モデルおよびSDKバージョン、脅威シナリオ、制御、テストケース、未解決のリスク、および責任者を記録します。ブロックされたアクションの例と、安全なエスカレーションの例をそれぞれ1つずつ含めます。新しいコネクタ、ツール、モデル、または自律性レベルが導入された場合は、レビューを見直します。以前の承認が、実質的に異なるアクション領域を暗黙のうちにカバーしてはなりません。
最小権限の実践
エージェントには、現在のタスクに必要なソースとツールのみを提供します。読み取りと書き込みの認証情報を分離します。プロジェクトとIDごとにファイルのスコープを設定し、ネットワーク宛先を制限し、一時的なアクセスを期限切れにします。ソースを参照できないユーザーを使用して、権限境界をテストします。
ツール呼び出し契約
{
"tool": "create_draft_task",
"arguments": {"title": "...", "owner": "...", "due_date": "..."},
"requires_approval": true,
"idempotency_key": "project-123:brief-v2"
}アプリケーションコード内の型、許容値、ID、および副作用を検証します。送信、削除、購入、アクセス権限の変更、または公開には確認を必須とします。冪等性キーを使用して再試行を安全に実行します。
取得とプロンプトの挿入
ドキュメント、Webページ、電子メール、およびツールの結果を信頼できないデータとして扱います。システム命令からこれらを分離し、ソース識別子を保持し、取得したテキストによって権限やツールポリシーが変更されないようにします。ソースが競合する場合、または取得が空の場合は、推測するのではなくエスカレーション状態を返します。
評価とインシデント対応
通常、不完全、攻撃的、テナント間、機密、ツール障害といったケースをテストします。ブロックされたアクション、安全でない提案、データ漏洩の試み、ツールエラー、レビュー担当者による修正を追跡します。ロールバックパスとインシデントを受け取る担当者を維持します。
よくある質問
AIエージェントは完全に自律的になれるのか?
自律性はセキュリティ特性ではなく、製品設定上の制約です。アクションの重大性が高いほど、承認、監視、ロールバックの制御を強化する必要があります。
プライベートモデルはエージェントのセキュリティ問題を解決できるのか?
いいえ。プライベートモデルはデータフローのリスクを変える可能性がありますが、ID、取得、ツールの権限、ランタイム分離、ログ記録、および人的レビューは依然として重要です。
チームはまず何を保護すべきでしょうか?
まずはID、取得権限、およびツールの書き込み境界から始めましょう。明確なトレースを備えた読み取り専用ワークフローは、広範な自律アクセスよりも安全な最初の導入方法です。
システム構造についてはAI エージェントのアーキテクチャを、実装の詳細についてはClaude Agent SDK ガイドを参照してください。
