研究者らは、AIで最も信頼されている安全機構の一つを、攻撃者が悪意あるコードの配信システムへと変えてしまう新たな手法を実証した。
人間参加型(HITL)の承認ダイアログを操作することで、攻撃者はユーザーをだまして、任意のコード実行につながる操作を承認させられる――しかも、ユーザーは何かがおかしいと気づかない。
この攻撃は「間接的なプロンプトインジェクションに起因するリモートコード実行攻撃を、ユーザーに承認させるよう欺くことができる」と、Checkmarxの研究者は述べた。
人間参加型(HITL)制御は、プロンプトインジェクションやAIの過度な自律性に対する防御として推奨されており、とりわけOSコマンドを実行できるコードアシスタントのようなエージェント型システムで重要視されている。
多くの組織は、ユーザー確認が壊滅的な結果を防ぐと考え、これらの承認ダイアログを最後の防衛線として頼っている。
Lies-in-the-Loop(LITL)攻撃は、その前提を覆す。攻撃者はHITLの安全策を回避する必要はない――ユーザーに見える内容を操作するだけでよいことを示している。
この手法は、開発者ツール、AIコードアシスタント、そしてVS Codeのターミナルやチャット型IDE拡張などの環境で動作する他の特権エージェントに影響する。
HITLダイアログ偽造攻撃の内側
概観すると、LITL攻撃は間接的なプロンプトインジェクションを悪用してエージェントのコンテキストを汚染する。攻撃者は悪意ある指示を与え、AIが後にそれをユーザーに表示されるHITLダイアログへ埋め込む。
根底のコマンド自体は有害である一方、ダイアログは無害に見えるよう作り込まれ、承認を促す。
この欺瞞をより効果的にする手法がいくつかある。
一つの方法はパディングで、攻撃者が無害そうな大量のテキストを末尾または先頭に付け足し、悪意あるペイロードをダイアログの可視領域の外へ押し出す。
スクロールしても無難な内容しか見えない場合があり、疑念を下げてしまう。
別のベクトルはメタデータ改ざんだ。エージェントの中には、コマンドが何をするかを要約した短い説明を表示するものがある。
研究者は、この説明行も操作できることを示し、UI上は安全な操作をしていると主張しながら、実際にはまったく別のことを実行させられる可能性があるとした。
最も懸念される方法はMarkdownインジェクションだ。多くのHITLダイアログはMarkdownまたはHTMLでレンダリングされる。
その内容が適切にサニタイズされていなければ、攻撃者は書式の境界を破り、悪意あるコマンドを隠したり、偽のUI要素を注入したりできる。
テストでは、Microsoft Copilot ChatがMarkdownを不適切にサニタイズし、注入されたコンテンツが、条件次第ではユーザーをもっともらしく欺ける形でレンダリングされ得ることが示された。
概念実証のデモではcalc.exeのような無害なプログラムを起動しただけだったが、研究者は同じ手法がはるかに破壊的な行為にも使えると強調した。
AI承認の悪用によるリスクを低減する
LITL攻撃はユーザーの信頼に大きく依存するため、緩和には技術的制御と人の認識の両方が必要となる。エージェント型AIツールを利用する組織は、次を実施すべきだ:
- HITLダイアログは操作され得ることをユーザーに教育し、操作を承認する前にダイアログの内容、書式、視覚的な境界を批判的に確認するよう訓練する。
- 設計の良い構造化UIを備えたAIツールを優先し、悪意ある内容がより容易に隠せるターミナルベースのインターフェースへの依存を最小化する。
- 最小権限とゼロトラストを用いてエージェント権限を制限し、機微な操作にはコンテキスト内のHITL承認だけでなく追加の制御を要求する。
- 許可リストなどのコマンド検証制御、ポリシーチェック、またはコマンドの構築と実行の分離を強制し、安全でない操作を防ぐ。
- 監視と監査として、HITLダイアログ内容、承認判断、実行された操作をログに記録し、悪用の検知とフォレンジック分析の支援を行う。
- 高リスク操作に対して多層の承認と完全性保護を追加し、帯域外確認、ダイアログ整合性チェック、制限されたコンテキスト入力などを含める。
単一の制御でリスクを完全に排除できるわけではないが、ユーザーの認識と技術的セーフガードを組み合わせた多層的アプローチは、レジリエンスを有意に高められる。
信頼が攻撃対象領域になるとき
Lies-in-the-Loop攻撃は、現代のセキュリティにおけるより広い現実を映し出している。信頼を担保するために設計された仕組みそのものが、ますます攻撃対象領域になっているのだ。
AIエージェントがより高い自律性と、システムへのより深いアクセスを得るにつれ、攻撃者は技術的制御を直接破ることから離れつつある。
その代わりに、人間の判断や承認ワークフローの操作に注力しており、たった一度の「信頼された決定」が、広範な操作を正当化してしまう。
信頼そのものが悪用のポイントになるにつれ、組織は既定の信頼という前提を排するゼロトラスト原則へと、ますます舵を切っている。