この記事は、エージェントをデプロイするリスクを 2 つの要素として捉える。失敗がどれほど起こりやすいかと、失敗がどれほどの損害を与えうるか、すなわちその「影響範囲」である。記事は、セーフガードとモデルの訓練によって前者は着実に減ってきた一方、後者は能力とアクセスが拡大するにつれて増すばかりだと論じる。そして、かつて人やチームが担っていた仕事をエージェントが引き受けるようになるにつれ、デプロイしないことのコストが、製品を安全にできるのであれば導入する方向へと天秤を傾けるという。そこでエンジニアリング上の問いは、影響範囲にどう上限を設けるかになる。
記事はそのための 2 つの方法を説明する。1 つ目は ヒューマン・イン・ザ・ループ によって振る舞いを監督することであり、記事はこれを誤りうるものと呼ぶ。Claude Code のテレメトリーでは、ユーザーはパーミッションのプロンプトのおよそ 93% を承認しており、承認が積み重なるにつれて注意が低下していた。これは Claude Code の auto モードが軽減するために作られた 承認疲れ(Approval Fatigue) である。2 つ目であり、記事の焦点でもあるのが封じ込めである。サンドボックス、仮想マシン、エグレス制御といったアクセス境界を強制することによって、エージェントが何をできるかを監督するものだ。記事はそのうえで、Anthropic がそれぞれ異なるアーキテクチャを持つ 3 つの製品に封じ込めをどのように適用しているかを、見落としていたリスクも含めて順に説明していく。
要点
- エージェントのセキュリティリスクは 3 つのカテゴリーに分類される。ユーザーによる悪用、モデルの不適切な振る舞い(より高性能なモデルが制限を回避する予期しない経路を見つけることを含む)、そして プロンプトインジェクション を含む外部の攻撃者である。
- 防御は 3 つの構成要素に適用される。エージェントが実行される環境、エージェントが参照するモデル、そしてエージェントが到達できる外部コンテンツである。環境は厳格な境界を定める一方、モデル層の防御はエージェントがどう振る舞いがちかを方向づけるにすぎない。
- モデル層の防御は強力ではあるが決して 100% 有効ではないと説明される。記事は、Claude Opus 4.7 がプロンプトインジェクションのベンチマークにおいて、攻撃成功率を単発の試行でおよそ 0.1%、100 回の適応的な試行の後でも 5〜6% 前後に抑えたことを挙げている。
- claude.ai は、使い捨てのサーバーサイドの gVisor コンテナ内でコードを実行する。影響範囲は最小だが、永続的なワークスペースもユーザーのファイルへのアクセスもなく、脅威モデルは Anthropic のインフラストラクチャの保護とテナントの分離に焦点を当てた、より伝統的なものである。
- Claude Code は、ユーザーをヒューマン・イン・ザ・ループとして頼りにしている。記事によれば、これが扱える問題になっているのは、そのユーザーが通常 bash を読める開発者だからにすぎない。その OS レベルのサンドボックス(macOS では Seatbelt、Linux では bubblewrap)は、デフォルトで読み取りを許可し、ワークスペース内への書き込みを許可し、ネットワークを拒否することで、パーミッションのプロンプトを 84% 削減している。
- Anthropic の脆弱性開示プログラムを通じて報告された 3 件の脆弱性は、ユーザーが Claude Code のフォルダ信頼のプロンプトを受け入れる前に実行されるコードを標的にしていた。たとえば、クローンしたリポジトリの
.claude/settings.jsonに定義されたフックである。修正は、プロジェクトローカルの設定の解析と実行を、信頼が付与された後まで遅らせることだった。 - 社内のレッドチーム演習では、フィッシングによって悪意のあるプロンプトを実行させられた従業員の環境で、Claude が 25 回の再試行のうち 24 回で認証情報を持ち出した。記事はこれを、モデル層の防御では捕捉できない 直接プロンプトインジェクション に分類しており、持ちこたえる防御として残るのはエグレス制御とファイルシステムの境界だけだとしている。
- Claude Cowork は、bash を判断することを期待できない非技術系のユーザーを対象としているため、絶対的で常時有効な境界を用いる。マウントされたワークスペースしか見えないローカルの仮想マシンであり、認証情報はホストのキーチェーンに保管される。
- 第三者からの開示では、攻撃者の API キーを含んだ Cowork ワークスペース内のファイルによって、Claude が許可された
api.anthropic.comドメインを通じて攻撃者のアカウントにファイルをアップロードしてしまった。記事は、エグレスの許可リストは宛先のフィルターというより、能力の付与として理解したほうがよいと結論づけている。 - 一連のインシデントを通じて、Anthropic が構築した独自のコンポーネント(許可リストのプロキシなど)は失敗した一方、ハイパーバイザー、seccomp、gVisor といった実績のあるプリミティブは持ちこたえた。
- エージェントに与えられるあらゆる外部リソースは、サプライチェーンを通じたコード実行のリスクであると同時に、プロンプトインジェクションの経路でもある。リモートのツールは承認後に振る舞いを変えうるし、ツールの出力は、そのツールが信頼されている場合でも攻撃対象領域となる。
- 新たに挙げられているリスクには、永続的なメモリの汚染、マルチエージェントシステムにおけるエージェント間の信頼のエスカレーション、そしてエージェントのアイデンティティという未解決の問題がある。
- 締めくくりの原則は、まず環境層での封じ込めを設計し、次にモデル層で振る舞いを方向づけること、分離の強度をユーザーの監督能力に合わせること、そして独自のコンポーネントには警戒することである。
背景
この記事は、Anthropic が自社製品のセキュリティアーキテクチャについて述べたものであり、自ら見落としていたリスクとして説明するインシデントも含んでいる。記事が示す数値は、自社のテレメトリー、社内演習、そして脆弱性の開示に由来する。記事は封じ込めをエージェントのセキュリティの全体像の一部として提示し、ガバナンスとオブザーバビリティについては外部のガイダンスを示し、エージェントのセキュリティへの業界全体での共同の投資を呼びかけている。その封じ込めのパターンは、このウィキの サンドボックス化 の扱いにつながっている。