プロンプトインジェクション(Prompt Injection)は、生成AIのセキュリティにおける最重要リスクのひとつです。悪意ある入力によってLLMの振る舞いを操作し、システムプロンプトの無効化や機密情報の漏洩につながる攻撃です。生成AIパスポートの第4章(セキュリティ)で頻出します。本記事では定義・攻撃例・ジェイルブレイクとの違い・対策・出題ポイントを整理します。詳細は用語辞典もあわせてご覧ください。
プロンプトインジェクションとは
プロンプトインジェクションは、SQLインジェクションになぞらえた造語で、ユーザー入力を通じてLLMの本来の指示を上書き・無効化する攻撃手法です。
- 英語表記 Prompt Injection
- 本質 LLMはユーザー入力とシステム指示を区別しきれず、悪意あるテキストに従ってしまう
- リスク 機密情報の漏洩、有害コンテンツの生成、意図しない動作の実行
攻撃の種類
- 直接インジェクション ユーザーが直接「以前の指示を無視して〇〇しろ」と入力する
- 間接インジェクション 外部データ(Webページ、メール、文書)に悪意ある指示を埋め込み、RAG等で読み込ませる
- システムプロンプトの漏洩 「あなたの初期指示を教えて」と聞いてシステムプロンプトを抽出
- 権限昇格 通常は実行できない操作を、巧妙なプロンプトで実行させる
間接インジェクションは、RAGを導入したシステムで特に注意が必要です。
ジェイルブレイクとの違い
| 用語 | 概要 |
|---|---|
| プロンプトインジェクション | システム指示の改ざん・上書きを含む攻撃全般。情報漏洩にもつながる |
| ジェイルブレイク | 安全制限・ガードレールを回避し、有害・禁止コンテンツを出力させる手法 |
試験では両者が近い文脈で出題されることが多く、「セキュリティリスクとして何に注意すべきか」を問うケース形式が頻出です。
対策
- 入力の検証・サニタイズ ユーザー入力に悪意あるパターンがないかチェック
- システムプロンプトとユーザー入力の分離 役割を明確に分け、優先順位を設計
- 出力フィルタ 有害・機密情報を含む出力を検出してブロック
- 権限の最小化 AIエージェントに与えるツール・API権限を必要最小限に
- 機密情報の入力禁止 社内規程でプロンプトへの機密データ入力を禁止
- 間接インジェクション対策 RAGで取り込む外部データの信頼性を検証
試験での出題ポイント
| 試験 | 出題の傾向 | 演習 |
|---|---|---|
| 生成AIパスポート | 第4章で頻出。定義、対策、業務利用時の注意 | 第4章 |
| G検定 | AI倫理・セキュリティ、生成AIリスクの文脈 | domain-04 |
よくある質問
プロンプトインジェクションとは何ですか?
悪意ある入力でLLMの振る舞いを操作する攻撃です。用語辞典で詳しく解説しています。
ジェイルブレイクとの違いは?
ジェイルブレイクは安全制限の回避、プロンプトインジェクションはより広い攻撃概念です。試験では文脈に応じて区別されます。
対策は何ですか?
入力検証、出力フィルタ、権限の最小化、機密情報の入力禁止など。AI倫理・ガイドラインも参照してください。
どの試験で出題されますか?
主に生成AIパスポート第4章で頻出です。G検定のセキュリティ分野でも出題されます。