powered by TechFeed
表示モード
Deep Dive

AIコーディングエージェント「Claude Cowork」のサンドボックスからSSH鍵とクラウド認証情報が読み取られる脆弱性をAccomplishが実証——「VMで隔離されているから安全」という前提が崩れた

7月24日、Cyber Security Newsが「Claude Cowork Sandbox Escape Flaw Lets AI Agent Read SSH Keys and Cloud Credentials From Host」と題した記事を公開した。セキュリティ研究企業Accomplishが実証した攻撃手法により、「VMで隔離されているから安全」とされてきたローカルAIコーディング環境の前提が根本から崩れる可能性が示された。

7月24日、Cyber Security Newsが「Claude Cowork Sandbox Escape Flaw Lets AI Agent Read SSH Keys and Cloud Credentials From Host」と題した記事を公開した。セキュリティ研究企業Accomplishが実証した攻撃手法により、「VMで隔離されているから安全」とされてきたローカルAIコーディング環境の前提が根本から崩れる可能性が示された。


Claude Coworkとは——AIコーディングエージェントのローカル実行という潮流

「Claude Cowork」は、Anthropicが提供するAIコーディング環境の一形態であり、AIエージェントがローカルのLinuxゲストVM上でコードを実行する仕組みを採用している。クラウド上でコードを実行するのではなく、ユーザーのマシン上でエージェントが動作するローカル実行モデルは、データをクラウドに送らずに済む点や応答速度の面からニーズが高まっており、AIコーディングツール全般において普及が進んでいる。

こうしたモデルでは「AIがコードを自律的に実行しても、ホスト環境はVMの壁で守られている」という前提がセキュリティ上の拠り所となってきた。Accomplishの今回の研究は、その前提そのものに疑問を投げかける。


サンドボックスが「抜け穴」に——「SharedRoot」攻撃の全貌

Accomplishは、「SharedRoot」と名付けた攻撃手法を実証した。Claude CoworkのセッションでAIエージェントが操作した内容が、LinuxゲストVM(仮想マシン)の外側——ホストmacOSのファイルシステム——に直接書き込まれることを確認した。

実証では、新規のCoworkセッションで共有フォルダを設定し、細工されたプロンプトを与えると、エージェントがホストユーザーのホームディレクトリ全体を読み書きできる状態になった。意図された共有フォルダの範囲をはるかに超えている。Accomplishはホスト側のホームディレクトリに、「サンドボックス内で書いたファイル」がほぼ即座に出現することを確認している。


問題は単一の脆弱性ではない——4つの設計ミスの連鎖

この脆弱性の根本はカーネルの単一バグではない。4つの設計上の問題が連鎖することで成立する。

攻撃の流れを整理する。

  1. ホストファイルシステムがVM内にvirtiofsマウントで丸ごとマウントされている。virtiofはLinux KVM環境でホスト・ゲスト間のファイル共有を高速化するための仕組みだが、設計上、ホスト全体がVM内から参照できる状態にある。

  2. セッションアカウントは非特権ユーザーだが、**unshareコマンドでユーザー名前空間(user namespace)を作成**できる。user namespaceはLinuxカーネルが提供するプロセス隔離機構の一つで、名前空間内ではホストのrootとは独立した「仮のroot権限」を持つことができる。今回はこの仕組みが権限昇格の足がかりとなった。

  3. seccompフィルタが緩く、netlink socket経由でact_peditカーネルモジュールをロードできる。seccompはシステムコールを制限するLinuxのサンドボックス機構だが、今回の構成では制限が不十分だった。

  4. カーネルモジュールのロードをトリガーに、CVE‑2026‑46331(通称「pedit COW」)と呼ばれるUbuntuカーネルの脆弱性を悪用する。なお、このCVE番号は2026年発番であり、元記事公開日(7月24日)時点で正式登録済みかどうかは確認できていないため、「報告済みの脆弱性」として扱う。COW(Copy-On-Write)はOSがメモリやファイルを効率的に扱うための技術で、書き込み時にのみデータのコピーを作成する仕組みだ。このCOW処理のページキャッシュ(メモリ上のファイルキャッシュ)を破壊できるバグにより、攻撃者はroot所有のバイナリのオンメモリイメージを改ざんできる——ディスク上のファイルは変更されないため、整合性チェックを回避できる。

改ざんされたバイナリを、rootデーモン(coworkd)が通常の動作の中で再実行することで、ゲストVM内でroot権限を取得する。NoNewPrivsなどの保護機構は、実行プロセスがすでにroot権限を持っているため効果を発揮しない。

root取得後は、VM内に存在する隠しファイルシステムマウントを辿るだけで、ホストのSSH秘密鍵(~/.ssh/id_rsa等)、AWSやGCPなどのクラウド認証情報(~/.aws/credentials等)を含むホームディレクトリ全体への読み書きが可能になる。ユーザーへの確認プロンプトは一切ない


AIエージェント運用者が直視すべきこと

Claude Coworkはローカル実行モデルを採用しており、「AIがコードを動かしてもホスト環境は安全」という前提でユーザーに提供されてきた。今回Accomplishが実証した攻撃手法はその前提を崩す。

問題の本質は特定のカーネルバグではなく、サンドボックス統合の設計思想そのものにある、とAccomplishは指摘している。コードを実行するAIエージェントをローカル環境で使う場合、「VMで動いているから安全」という認識は再考が必要だ。AIコーディングエージェントのローカル実行モデルが広まる中、同様のアーキテクチャを採用する他製品にとっても無縁ではない問題といえる。

詳細はClaude Cowork Sandbox Escape Flaw Lets AI Agent Read SSH Keys and Cloud Credentials From Hostを参照していただきたい。