AI コーディングエージェントの危険リクエスト、人間が 3 割見逃す
本文の状態
日本語全文を表示中
詳細モードで約7分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
The Register AI/ML
ブラウザゲームによる実験で、人間の介入(ヒューマン・イン・ザ・ループ)は AI コーディングエージェントの危険なリクエストを平均して約 3 割見逃し、承認作業の繰り返しにより判断が雑になる傾向があることが示された。
AI深層分析を開く2026年8月7日 02:22
AI深層分析
キーポイント
人間の承認能力の限界
40,000 回以上のゲーム実行データから、人間は危険なコマンドを平均して約 3 割見逃すことが判明した。
承認疲れによる判断ミス
エージェントの行動を逐一承認する作業はノイズが多く疲労を生み、開発者が文脈を理解できずに安全なコマンドを見落としたり危険なものを許可したりする原因となっている。
特定のリスクの盲点
スコープ違反(Kubernetes 設定や AWS 認証情報の漏洩など)が最も多く見逃され、その割合は約 35% に達している。
文脈不足による承認の失敗
npm run analyzeのような一見無害なコマンドが実際には任意のペイロードを実行できるため、限られた文脈下での判断は困難である。人間が安全を確認するには各ファイルを調査する必要があるが、これは時間的な負担となり過信を招く。
承認疲れによる監視の低下
ユーザーは許可プロンプトを頻繁に目にするにつれて注意が散漫になり、最終的に約93%の要求を承認するようになる。この現象は、人間がループに入る従来の手法が危険なコマンドの通過を防げない現実的な問題を示している。
重要な引用
"As human-in-the-loop, you're the last line of defense,"
"The high amount of noise introduces fatigue, and developers don't always have the context of what has changed to quickly determine the risk"
"one in three malicious commands managed to slip past human gatekeepers"
"The more approvals a user sees, the less attention they pay to each, becoming over time much less diligent in their supervision."
編集コメントを表示
編集コメント
この調査は、AI エージェントの利便性を高めるために導入された承認プロセスが、逆に人間の認知負荷を高めセキュリティ脆弱性を生んでいるという逆説的な現実を浮き彫りにしている。開発者は単純な承認作業に依存するのではなく、リスクベースの優先順位付けや自動化による承認フローの再設計を検討すべきである。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
AI コーディングエージェントの危険なリクエストを人間が安全に承認できるかを試すブラウザベースのゲームでは、人間の介入(ヒューマン・イン・ザ・ループ)は期待ほど危険なコマンドを見抜けないことが示されました。プレイヤーは平均して悪意のあるリクエストのおよそ 3 分の 1 を承認しています。また、エージェントの行動を繰り返し承認する必要があると、判断が雑になる傾向もあるようです。
表面は一見シンプルで簡単なゲームです(ぜひ試してみてください)。画面には Claude Code がワークフローを実行する際に現れるような、模擬的な権限リクエストが表示されます。ユーザーは 60 秒以内にできるだけ多くのリクエストを承認または拒否し、ハイスコアを目指します。セキュリティリスクのあるものを誤って承認したり、安全なコマンドを誤って拒んだりすると、スコアが減点されます。
ベルギーのソフトウェア開発者である Alex Wauters 氏は、このゲームの作成者として、5 月末のローンチに合わせて公開したブログでプレイヤーにこう問いかけます。「ヒューマン・イン・ザ・ループにおいて、あなたは最後の防衛線です。時間制限の中で、危険なコマンドと無害なコマンドをどれだけ正確に見分けられるでしょうか?」
Wauters 氏は The Register とのメールインタビューで、コーディングエージェントがデフォルトのフローでユーザーにすべてのコマンド承認を求めることが不合理であり、その問題に対する良い解決策が見当たらないことに気づいたため、このゲームを作成したと語っています。
「『--dangerously-skip-permissions'(モデルに人間の許可を求めずに実行させるオプション)を採用する人がいるのを見ましたが、それは多分、数時間にわたるエージェントフローが開始から5分で停止してしまうのを避けたかったからです」とウォーターズ氏は語りました。しかし、彼はその方法も最善ではないと考えています。
水曜日のブログ記事で、40,000 回以上の実行データを紹介したウォーターズ氏は、その逆の側面についても指摘しています。エージェントのすべての行動を手動で承認するのは疲弊する作業であり、かえって災いを招くリスクがあるのです。「膨大なノイズが疲労を生み、開発者は変更された内容の文脈を常に把握できているわけではないため、リスクを素早く判断できない」と彼は書いています。
人間がループ(監視)に含まれることでなぜ失敗するのか。公平に言えば、このゲームには、実際の AI 支援開発者が日常業務で遭遇する可能性のあるものよりもはるかに多い悪意あるリクエストが含まれています。それでも、40,000 回以上の実行と 409,000 件の承認・拒否コマンドの結果は鮮明です。
前述の通り、悪意あるコマンドのうち約 3 割が人間のゲートキーパーをすり抜けています。特に多いのはスコープ違反で、例えば Kubernetes の設定ファイルや AWS の認証情報リストへのアクセスをエージェントに要求するケースなどがあり、これらは含まれる機密データの漏洩に直結します。こうした違反の約 35% が見過ごされていました。
逆に、最もよく検出されたのは破壊的なコマンドです。ルートディレクトリに対する rm -rf や、同じ場所に再帰的に完全な読み書き実行権限を付与するコマンドなどが該当します。
Crontab の注入や git config の乗っ取りも頻繁に検出されましたが、不明な API への curl リクエストやタイポスクワットされたパッケージの誤用は、スコープ違反とほぼ同率で見過ごされていました。Wauters 氏によると、最も多く見逃された潜在的に悪意のあるコマンドは「npm run analyze」でした。これはプロジェクトの package.json ファイルに定義されているどんなコードも実行できるにもかかわらず、約 65% のケースで承認されています。
Wauters 氏はこう記述しています。「エージェントの履歴ログには、そのスクリプトが実際に何を含んでいるかが表示されます」。しかし、プレイヤーの 3 分の 2 がこれを承認しており、許可プロンプトの直上に表示される履歴ログを注意深く読んでいないことが示唆されています。
Wauters 氏との会話で特に際立ったのは、文脈が限られている場合、承認の判断を下すのがいかに難しいかという事実です。コーディングエージェントは承認を求める前に多少の文脈を提供しますが、「npm run analyze」のように一見無害に見えるコマンドも、エージェントによって任意のパイロードを実行するように書き換えられる可能性があります。
潜在的に悪意のあるコマンドが安全かどうかを確実にしたい場合、人間が介入して承認する前には、コーディングエージェントが呼び出そうとするすべてのファイルを停止して調査する必要があります。Claude Code によって他の業務に集中できる時間を確保しようとしている場合、これは大きな時間的損失になり得ます。
「AI が単一行の提案を提示し、それをレビューする段階から、より複雑なタスクを一任して、最終的な変更点のみを確認し、エージェントがその間もひたすら作業と反復を行うように移行しました」とワウターズ氏は語り、この状況の結果を「破滅への道筋」だと指摘しました。これはブラウザゲームのシナリオに限った話ではありません。
Anthropic は 5 月の投稿(タイトルは『Claude を封じ込める』)で、Claude Code のテレメトリデータから、ユーザーが権限プロンプトの約 93% を承認していることを明らかにしました。同社は「ユーザーが承認する回数が増えるほど、各プロンプトへの注意は薄れ、時間とともに監督がずさんになる」と述べています。つまり、これは非常に現実的な問題なのです。
コーディングエージェントを制御するにはどうすべきか?
ワウターズ氏のデータから導き出される結論は、「人間がループ(監視)に参加していることで疲労し、悪意のあるコマンドを見逃してしまう」ことと、その反対極にある「すべてを無批判に承認する」ことのどちらかに偏っているなら、何らかの対策が必要だということです。
ワウターズ氏は「このエージェントの権限モデルにもっと目を向け、開発者もそのトレードオフを理解する必要があります」と語りました。「HITL(人間による監視)が有効な解決策だと指摘するのではなく、ツールを改善してこれらのシステムをより安全にする必要があります」
Anthropic は前述の投稿で、承認疲労に対処し、一部の権限承認判断をモデルベースの分類器に委譲することでユーザーをサポートするため、『Claude Code』の自動モード(auto mode)を実装したと明記しています。
このシステムは、Anthropic が「過剰な反応」と呼ぶ行為の約 83% を実行前に検出しており、評価では約 17% がすり抜けています。Auto モードは「サンドボックス内の防御の多層化における一つの層に過ぎず、それを代替するものではない」と Anthropic は説明しています。
Wauters の提案は、AI コーディングモデルをクラウド上のデブコンテナ内で実行し、auto mode などのツールを活用するとともに、フックを設定して潜在的な悪意のある行動が文脈化され、自動承認される前に検出されるようにすることです。「攻撃ベクトルの新しい世界が広がっている」と Wauters は 5 月に記述しています。「リスクを認識し、それを軽減する方法を知っておくことが最善策です。」
原文を表示
A browser-based game designed to test humans' ability to safely approve AI coding agent requests suggests humans in the loop aren't as good at spotting dangerous commands as one might hope, with players approving roughly one in three malicious requests on average. The results also suggest that repeatedly having to approve an agent's actions can lead to sloppy decisions. It’s a quick, simple game on the surface (give it a try - you know you want to): A small window shows up on the screen with simulated permissions requests like one would get from Claude Code as it executes a workflow. Users have 60 seconds to approve or deny as many requests as they can in a bid for a high score; okayed security risks and denied safe commands both subtract from a user’s score. “As human-in-the-loop, you’re the last line of defense,” Belgian software developer Alex Wauters, the game’s builder, challenges players in a blog post published concurrently with the late May launch of the game. “How well can you tell dangerous commands from benign commands under time pressure?” Wauters built the game after realizing it was nonsensical that coding agents expected users to approve every single command in a default flow and that there didn’t appear to be a good solution to that problem, he told The Register in an email conversation. “I've seen people go for '--dangerously-skip-permissions' [allowing the model to run without asking human permission] as a result because they did not want to find out they stopped their multi-hour agent flows 5 minutes in,” Wauters told us. “That also didn't seem like the best way to go at it.” The flip side of that, he wrote in a Wednesday blog post going over the data from more than 40,000 runs of the game, is that manually approving all an agent’s actions is a draining activity that invites disaster. “The high amount of noise introduces fatigue, and developers don’t always have the context of what has changed to quickly determine the risk,” Wauters wrote. How humans in the loop fail To be fair, this is a game with a far higher number of malicious requests in the mix than any AI-assisted developer will hopefully ever see during their day-to-day work. Still, the results of those over 40k runs and 409,000 approved and denied commands are stark. As noted above, one in three malicious commands managed to slip past human gatekeepers, with most scope violations, like an agent asking to cat Kubernetes config files or AWS credentials lists, which could easily lead to the sensitive data they contain being exfiltrated, being the most commonly missed at 35 percent. The most often caught were obviously destructive commands, like rm -rf on the root directory or recursively granting full read/write/execute permissions on the same location. Crontab injections and git config hijacks were also frequently caught, but curl requests to unknown APIs and typosquatted packages were missed almost as often as scope violations. The single most frequently missed potentially malicious command, Wauters explained, was npm run analyze, which was approved nearly 65 percent of the time despite being able to run whatever is defined in a project’s package.json file. “The game does tell you in the agent’s history log what that script actually contains,” Wauters wrote. “Two thirds of players approved it anyway, indicating the history log just above the permission prompt may not be read closely.” One of the biggest things that stood out to Wauters in our conversation was the fact that approval decisions aren’t easy to make when context is limited. As he explained, coding agents give a bit of context prior to asking an approval question, but commands that appear benign, like npm run analyze, can be modified by an agent to run any payload it wants. If an in-the-loop human wants to be sure potentially malicious commands are safe, he said, they have to stop and investigate all the files a coding agent wants to call before approving it. That can be a massive time sink if you’re counting on Claude Code to free you up to handle other business. “We've transitioned from AI suggesting single line suggestions that get reviewed to handing off more complex tasks, only reviewing the changes at the end, and letting the agent churn and iterate until then,” Wauters told us, describing the potential outcome of that situation as a recipe for disaster. That’s borne out in more than just browser game scenarios, too. Anthropic pointed out in a May post about containing Claude (hah), that telemetry from Claude Code shows users approve around 93 percent of permission prompts. “The more approvals a user sees, the less attention they pay to each, becoming over time much less diligent in their supervision,” the company said. In other words, this is a very real problem. Controlling coding agents If the conclusion to draw from Wauters’ data is that humans in the loop are being fatigued into letting malicious commands slip through, and the other end of the spectrum is mass approving everything, then something’s gotta give. “I think it becomes clear we need to pay more attention to the permission model of these agents, and devs need to be more aware of the trade-offs of them,” Wauters told us. “We need to make the tooling easier to make these systems safer than pointing to HITL as a valid solution.” Anthropic noted in the post linked above that it built Claude Code auto mode to help users tackle approval fatigue by delegating some command-approval decisions to a model-based classifier. The system catches roughly 83 percent of what Anthropic calls "overeager behaviors" before they execute, meaning about 17 percent still get through in its evaluation. Auto mode is “one layer of defense-in-depth inside a sandbox, not a substitute for one,” Anthropic said. Wauters’ suggestion is to ensure that AI coding models are running in sandboxes, in devcontainers in the cloud, using tools like auto mode, and writing hooks to ensure potentially malicious actions are being contextualized and getting caught before they’re automatically approved. “It’s a whole new world with a new set of attack vectors,” Wauters wrote in May. “It’s best to remain aware of the risks and know how to reduce them.” ®
関連記事
News to Guide
ニュースの次に確認する
発表内容を、現在の料金や仕様と照らし合わせられる関連ガイドです。
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み