AnthropicのWindows向けClaude Coworkに新たに開示されたサンドボックス脱出チェーンにより、ローカルでコード実行権限を持つ攻撃者が、この製品の隔離されたUbuntu VM内でroot権限を取得し、ネットワーク送信制限を完全に回避できることが判明しました。
Claude CoworkはWindows版Claude Desktopのコンポーネントで、Hyper-Vで隔離されたUbuntu VM内でClaude Codeを実行することで、技術に詳しくない一般社員でも開発者向けの本格的なClaude Code機能を必要とせずに安全にタスクを自動化できるようにしています。
このサンドボックスアーキテクチャは、Authenticodeで保護された名前付きパイプRPC、bubblewrapの名前空間、セッションごとの非特権ユーザー、seccompフィルタリング、そしてドメイン制限付きの送信プロキシなど、複数の防御層で構成されています。
Armadinのリサーチチームはこのスタック全体を対象に、root権限で密かにコードを実行し、制限なくネットワークへ到達することを目標に調査を行いました。
この多層防御モデルは、VM内で何かが侵害された場合でも、VM内で任意のコードが実行されるのを防ぐよう設計されています。
このサンドボックスの中核を担うのがCoworkVMServiceで、Local Systemサービスとして、VMとのJSONベースのRPC通信用に名前付きパイプを公開しています。
このサービスは、Anthropicの証明書に紐づいたAuthenticode署名を確認することで接続を検証しており、この検証は署名の複製を試みる攻撃や、代替の信頼チェーンを構築しようとする試みの両方に対して堅牢でした。
署名検証を直接突破するのではなく、ArmadinはDLLサイドローディングを利用してこれを回避しました。これは、攻撃者が制御するコードを正規に署名されたバイナリに読み込ませる、よく知られた手法です。
研究者らは、claude.exeがシステムのコピーにフォールバックする前に、自身のアプリケーションディレクトリからUSERENV.dllを解決することを発見しました。そのため、期待される関数をエクスポートする悪意のあるDLLをclaude.exeと同じ場所に配置することで、正規に署名されたAnthropicのプロセス内でコードを実行することに成功し、パイプの認証要件を破ることなく満たすことができました。
この足掛かりを得たArmadinは、AIコーディングエージェントの支援を受け、サービスログやエラーメッセージ、的を絞ったファジングを用いて、文書化されていないRPCプロトコルのリバースエンジニアリングを行い、spawn、configure、startVMといったVM制御用のメソッドを明らかにしました。
spawnメソッドのパラメータをファジングしたところ、ホスト側のサービスがフィルタリングを一切行わずにVM側のsdk-daemonへ転送している2つのフィールドが見つかりました。
1つ目のisResumeは、本来は新たな非特権ユーザーを作成せず既存のセッションを再利用するためのものですが、これをtrueに設定した上で「root」のような既存のユーザー名を指定すると、既存アカウントを対象にすることを通常は阻止するチェックを回避でき、フルroot権限とすべてのLinuxケーパビリティが有効化されたシェルを取得できました。
2つ目のallowedDomainsは、本来は特定のコマンドに対するネットワークアクセスの範囲を限定するためのものですが、これをワイルドカードに設定すると送信プロキシのドメイン許可リストが完全に無効化され、本来403レスポンスでブロックされるはずのトラフィックが通過してしまいました。
重要な点として、プロセスID 1はroot権限で動作している場合でもbubblewrapの名前空間内から可視状態のままであり、この可視性こそが実際の脱出経路となりました。
Armadinはこのプロセスに対してnsenterユーティリティを使うことで、bubblewrapサンドボックスから完全に抜け出し、基盤となるVMのマウント、プロセス、ネットワークなどの名前空間に入ることができ、事実上ホストVMへの無制限アクセスを獲得しました。
両方のパラメータを1つのリクエストに組み合わせることで、研究者らはroot権限での実行、サンドボックスからの脱出、そして/etc/shadowの内容を外部サーバーへ流出させるという一連の攻撃を一度に実行でき、この分離モデルが完全に破られることを実証しました。
Armadinはこの問題を2026年3月20日にAnthropicへ報告し、Anthropicは3月24日に回答、悪用にはホストマシン上でのローカルコード実行が必要であることを理由に、このチェーンをセキュリティ上の問題ではないと分類しました。Armadinは、Claude Desktop for Windowsのバージョン1.9255.2.0に対して、この攻撃チェーン全体を検証済みです。
Armadinは、Coworkの機能を必要としないシステムではClaude Desktopをアンインストールすることを推奨しています。これにより、名前付きパイプと脆弱なサービスが完全に排除されます。
必要なシステムでは、AppLockerのパッケージアプリルールを使ってアプリケーションの実行を許可するアカウントを制限でき、サイドローディングのペイロードが標的にできるユーザーの範囲を狭めることができます。
検知の観点では、標準のシステムディレクトリ以外から読み込まれる、悪用されやすいスタブライブラリについてclaude.exe上でのDLLロードイベントを監視することが、この手法とその想定される亜種をさらなる悪用の前に捕捉する有効な手がかりとなります。
今回の開示は、今年Anthropicのコーディングツール群全体で研究者らが指摘してきた、より広範なパターンを反映しています。同様のサンドボックスや権限強制の不備は、Claude Codeの設定処理や拒否リストのロジックにも表面化しています。
AIによる生産性向上ツールが、技術に詳しくない日常的なワークフローにローカル仮想マシンを組み込む事例が増えるにつれ、多くの組織がまだ監視体制を整えられていない新たな攻撃対象領域や可視性のギャップが生まれています。
翻訳元: https://cyberpress.org/claude-cowork-flaw/