使い方・開発 中級
プロンプトインジェクション
Prompt Injection
AI が読み込む文章の中に悪意のある指示を紛れ込ませ、本来の指示とは違う動作をさせる攻撃です。Web ページ・メール・文書を読むエージェントで特に問題になります。
別の呼び方間接プロンプトインジェクション、ジェイルブレイク
例受信メールを要約するエージェントに対し、本文に隠された指示で転送させるプロンプトインジェクションの検証を行った。
詳しく
- 直接型:ユーザー自身が「これまでの指示を無視して」などと入力し、制限を外そうとするもの。
- 間接型:AI が読み込む Web ページや文書、ツールの結果に指示が仕込まれているもの。エージェントが情報を外部に送ってしまう、といった被害につながりえます。
現時点で完全に防ぐ方法はなく、次のような対策を重ねます。
- AI に与える権限やツールを必要最小限にする
- 外部への送信・削除・支払いなど影響の大きい操作の前に人の確認を挟む
- 機密データと信頼できない外部の入力を同じ作業で扱わない
- 提供元の安全機能や、怪しい入力を検出する仕組みを使う
あわせて知りたい言葉
- AIエージェント目標を与えられると、自分で手順を考え、ツールを使い、結果を見て次の行動を決める、という流れを繰り返して作業を進める AI のしくみです。1回の質問に1回答えるチャットとは違い、複数の手順をまたいで作業します。
- コンピューター操作AI が画面のスクリーンショットを見て、マウスのクリックやキーボード入力を行い、人と同じようにパソコンやブラウザを操作する機能です。API が用意されていないアプリやサイトでの作業を自動化できます。
- MCP(モデル・コンテキスト・プロトコル)AI アプリと外部のツールやデータをつなぐための共通の取り決め(プロトコル)です。一度 MCP サーバーとして作れば、MCP に対応したさまざまな AI アプリから同じ方法で使えます。
- システムプロンプト会話全体を通じてAIの役割・口調・守るべきルールを決めるために、ユーザーの発言とは別に与える指示です。アプリ開発者が API で設定するのが一般的です。