
- 平均正答率は66.3%で、脅威を見逃す率は3回に1回
- npm runに偽装した攻撃の見逃し率は52.5%と2倍に増加
- 安全なコマンドの過剰ブロックが疲労を招く悪循環も浮き彫りに
何がわかったか
開発者向けに公開されたブラウザゲームは、AIコーディングエージェントの「人間による承認」を再現したものだ。プレイヤーは時間制限の中で、エージェントが実行するコマンドを承認するか拒否するかを繰り返す。ゲームには安全なコマンドと、認証情報の流出などの脅威が混在している。
そのゲームの統計が集計され、4万回以上の実行、約40万9000件の承認・拒否の判断が分析された。平均正答率は66.3%で、脅威を3回に1回は見逃している。35.2%のプレイヤーはすべての脅威を検出したが、その多くは安全なコマンドも大量にブロックしており、実用的な精度とは言い難い。
脅威の種類と見逃し率
破壊的なコマンドは比較的見逃されにくい。一方、認証情報を外部に送信するようなコマンドは、その3倍近く見逃される。特に盲点となったのが「npm run」だ。npm run は package.json に定義されたスクリプトを実行する仕組みで、それ自体は無害だが、スクリプトの中身が書き換えられていれば危険な処理が走る。
ゲームでは履歴ログに実際のスクリプト内容が表示されるにもかかわらず、3つの「npm run」偽装攻撃の見逃し率は52.5%に達した。他の難読化型の攻撃の28.4%と比べて約2倍成功率が高い。慣れ親しんだコマンド名に隠れることで、ユーザーの注意をすり抜けやすくなるというわけだ。
過剰ブロックという副作用
逆に、無害なコマンドを過剰にブロックするケースも目立つ。内部レジストリを設定する「npm config set registry」は59%の確率で拒否され、ビルド出力の削除「rm -rf dist/」も45%で拒否されている。ポート解放のためのプロセス終了、kill コマンドも43%でブロックされた。
この過剰ブロックはエージェントの作業を遅らせ、人間の注意力をすり減らす。Anthropic も Claude Code で「承認のたびに注意が薄れる」と指摘しており、許可を求める回数が多いほど監督が緩みがちになる。ゲームのデータでも、プレイ終盤にかけて脅威の見逃し率が上昇する傾向が見られた。
人間による承認の限界と対策
個々のコマンド承認に依存するモデルには根本的な限界がある。あるコマンドが安全かどうかは、変更されたファイルや実行環境に依存するため、人間が毎回正しく判断するのは難しい。ゲームの「cat ~/.zshrc」は45.9%のプレイヤーが承認しており、シェル設定にAPIキーを保存しているかどうかでリスクが大きく変わる。
このため、サンドボックス化や認証情報の分離など、承認そのものに頼らない対策が重要になる。また、開発者は許可モデルのトレードオフを理解し、必要に応じて Anthropic の「Auto Mode」のような自動判定機能を利用しつつ、その限界も認識しておく必要がある。
That’s a great example of how dangerous actions are perceived as innocent. The entire model of approving specific commands is absolutely bonkers.
これは、危険な行動が無害だと認識されてしまう好例だ。特定のコマンドを承認するというモデル自体が完全に破綻している。
日本の開発者・IT企業にとっての意味
日本でもAIコーディングエージェントの導入が進む中、今回の結果は「人間による承認」が万能でないことを示している。特にnpm runのような一般的なコマンドへの偽装攻撃は検知が難しく、過剰ブロックによる業務効率の低下や注意力の低下を招く。開発者はエージェントが実行するコマンドの意味を常に確認するだけでなく、実行環境をサンドボックス化し、認証情報をシェル設定から分離するといった根本対策を検討すべきだ。また、CI/CDや社内ツールとの統合に当たっては、承認モデルの設計を慎重に行い、自動判定機能の採用と監査ログの整備を組み合わせるのが現実的だろう。
用語解説
- human-in-the-loop
- 人間がシステム処理の一部に介在すること。ここではAIエージェントのコマンド実行を承認する作業を指す。
- permission fatigue
- 承認要求が多すぎて注意力が低下し、危険な承認をしてしまう現象。
- npm run
- Node.js環境でpackage.jsonのscriptsに定義されたコマンドを実行する機能。
- exfiltration
- 機密データを外部へ不正に送信すること。
- sandboxing
- アプリケーションの実行環境を隔離し、システム全体への影響を制限する手法。
出典
Humans missed 1 in 3 threats approving AI agent commands across 40k game runs
AI導入も顧問も、お任せください
何から手をつけるか、どこまでAIに任せるか。自社の業務に合わせて整理し、導入から運用まで伴走します。相談だけでも構いません。
AI導入について相談する