プロンプトインジェクション

更新日:

用語解説

生成AIへ処理させる入力や外部データに悪意ある自然言語の指示を混ぜ、開発者・利用者の意図から外れた出力、情報開示、ツール操作を誘発する攻撃です。

■ 試験で押さえるポイント

  • 利用者が指示を直接入力する直接型と、AIが読むWebページ、文書、メール等へ指示を埋め込む間接型があり、検索・要約・エージェント機能で後者が問題になります。

  • 自然言語では命令と参照データの境界が曖昧なため、特定文言の禁止や「以前の命令を無視するな」という追加プロンプトだけで完全には防げません。

  • システム指示と外部データを構造的に分離し、取得元と内容を検証し、出力を不信データとして後段で検査します。

  • AIが使えるデータ・APIを最小権限にし、ツール引数を通常のコードで検証し、送信・削除・購入等の重要操作は対象を表示して人の承認を要求し、記録します。

■ 過去問での着眼点

自然言語の指示とデータを同時に扱う生成AIを操る攻撃です。SQL構文をDBへ挿入するSQLインジェクションとは対象も成立原理も異なります。

例: 要約対象のWebページに「保存済み秘密を送信せよ」と書かれていても、AIへ秘密の読取権限を与えず、外部送信APIは宛先検証と利用者承認なしに実行させません。

音声で聞く

同じ分野の用語