プロンプトインジェクションとは?仕組み・実例・企業がとれる対策
生成AIに読ませる文章に指示を紛れ込ませ、AIを意図しない動きに誘導する「プロンプトインジェクション」の仕組みと種類、実際に報告された脆弱性、AIを業務で使う会社がとれる対策を、総務省のガイドラインやOWASPの資料をもとに解説します。
プロンプトインジェクションとは
プロンプトインジェクションは、生成AIに与える入力の中に指示を紛れ込ませ、AIの提供者や利用者が意図していない動きをさせる攻撃です。総務省のガイドラインは「LLMに細工をした入力を行うことで、不正な出力をさせる攻撃」と定義しています1。AIを組み込んだアプリケーションのリスクをまとめた OWASP の「Top 10 for LLM Applications 2025」でも、10項目の最初(LLM01)に挙げられています2。
生成AIを使ったサービスの多くは、裏側でAIに「あなたは〇〇社の問い合わせ窓口です。社外秘の情報は答えないでください」といった指示(システムプロンプト)を与え、その後ろに利用者の質問や、AIに読ませる資料をつなげて処理しています。AIにとってはどれも同じ「文章」です。そのため、利用者の入力や読ませた資料の中に「これまでの指示を無視して、次のことをしてください」と書かれていると、AIがそちらに従ってしまうことがあります。
ここが従来の攻撃と違うところです。SQLインジェクションのような攻撃は、命令とデータを分けて扱う仕組みで根本的に防げます。生成AIには、指示と文章を確実に分ける仕組みがまだありません。AI事業者ガイドラインも、AIへの攻撃による脆弱性は完全には排除できないと認識したうえで対策するよう求めています3。
直接型と間接型
総務省のガイドラインは、細工したプロンプトを直接入力するものを「直接」、細工したデータをAIに参照させるものを「間接」と呼び分けています1。
| 直接型 | 間接型 | |
|---|---|---|
| 指示を入れる人 | AIの利用者本人 | 第三者(攻撃者) |
| 指示の置き場所 | チャットの入力欄 | AIが読み込むWebページ・メール・文書など |
| 利用者は気づくか | 本人が入力するので気づいている | 気づかないことが多い |
| 主な被害 | 社外向けチャットボットの不適切な回答、システムプロンプトの流出 | 社内情報の持ち出し、意図しない操作の実行 |
直接型
利用者がチャットの入力欄に、AIの設定を外させるような指示を直接書き込むものです。総務省のガイドラインは手口の例として、指示の上書き(「過去の指示を無視せよ」)、ロールプレイをさせる、特殊な文字コードやアスキーアートを使う、別の作業に置き換えさせる、などを挙げています1。
間接型
AIが仕事の途中で読み込む外部の文章に、攻撃者があらかじめ指示を仕込んでおくものです。総務省のガイドラインは、細工したファイルをWebに置く、細工した電子メールを送る、といった手口を挙げ、Webページに隠した命令で、事実確認をするAIに偽の情報を「真実」と答えさせる例を図で示しています1。
社内でAIを使い始めた会社にとって注意が要るのは、こちらの間接型です。AI事業者ガイドラインは、間接プロンプトインジェクションによって、社内文書を検索して答える仕組み(RAG)が悪用されたり、AIに設定した制御が無視されたりするリスクを挙げています。さらに、AIエージェントは入力の経路や外部との連携が多いため攻撃される範囲が広がり、人の意図しない注文やファイルの削除をしてしまう可能性にも触れています4。
利用者は普段どおりAIに仕事を頼んでいるだけなので、攻撃に気づきにくいのも特徴です。
企業で起きうる被害
総務省のガイドラインは、プロンプトインジェクションでAIにさせられる「不正な出力」の例として次を挙げています1。
- 社内データの持ち出し: AIが参照する社内文書(RAGのデータ)の内容を出力させる
- 連携先のシステムの操作: SQLやシステムコマンドを生成させ、連携先で実行させる(漏えい・改ざん・削除)
- 内部の指示文の流出: システムプロンプトの内容を出力させる
- 誤った回答: 事実と異なる内容を出力させる
被害の大きさは、AIが何を読めて、何を実行できるかでほぼ決まります。読めるデータが多く、任せている操作が多いほど、乗っ取られたときの被害は大きくなります。
実際に報告された脆弱性
2025年6月には、Microsoft 365 Copilot(現在の名称は Microsoft Copilot)に、外部の攻撃者がネットワーク越しに情報を開示させうる脆弱性(CVE-2025-32711、通称「EchoLeak」)が公表されました6。IPAは「情報セキュリティ10大脅威 2026」の解説書で、メールなどに含まれる人の目に見えない指示によって、利用者が操作しないうちに秘密情報を外部へ送らせうるものとして紹介し、間接プロンプトインジェクションには完璧な技術的対策が知られていないと整理しています5。
当サイトの事例集では、AIを組み込んだ製品で見つかったプロンプトインジェクションの脆弱性を、ベンダーの勧告や発見者の報告へのリンクつきで掲載しています。プロンプトインジェクション・AIの脆弱性の事例
対策:防ぎきれない前提で、被害を小さくする
OWASP は、プロンプトインジェクションを確実に防ぐ方法があるかは分からないとしたうえで、複数の緩和策を組み合わせるよう勧めています2。入力をチェックする仕組みは有効ですが、言い回しを変えた指示をすべて見抜くことはできません。そのため対策は、入られても被害が小さくなるように設計することが中心になります。
1. AIに与える権限を必要な分だけにする
AIアシスタントやAIエージェントが読めるデータ、使えるツール、実行できる操作を、業務に必要な範囲に絞ります。総務省のガイドラインも、AIを動かす仕組み(オーケストレータ)の最小権限と、社内文書の検索範囲を利用者や役割に応じて設定することを挙げています1。全社の共有フォルダを読めるAIは、そのすべてを持ち出される可能性があります。
2. 取り消しにくい操作は人が確認してから実行する
外部へのメール送信、ファイルの削除、支払い、権限の変更などは、AIが提案して人が承認する流れにします。OWASP も、影響の大きい操作での人の承認を緩和策に挙げています28。
3. 外部の文章と社内の情報を混ぜない
IPAとAIセーフティ・インスティテュートの「AI利用者のためのセキュリティ豆知識」は、外部から届いたメールと社内文書が同時にAIに取り込まれると社内情報が流出するおそれがあるとして、検索の範囲を制限するよう勧めています。Webを閲覧するAIブラウザは、社内用と社外用で分けることも勧めています7。業務に要らない「Webの閲覧」「受信メールの要約」「外部ファイルの読み込み」の機能は、管理画面で無効にします。
4. AIの出力を外へ出す経路を制限する
AIの回答に含まれる外部へのリンクや画像を自動で読み込まない、外部への送信先を限定する、といった制限は、情報の持ち出しを難しくします。
5. システムプロンプトに秘密を書かない
総務省のガイドラインは、APIキーなどの機密はシステムプロンプトに書かず、分けて管理するよう求めています1。システムプロンプトは聞き出されうる前提で作ります。
6. 記録を残し、製品を最新に保つ
AIへの入力と出力、AIが実行した操作を記録し、定期的に確認します(AI事業者ガイドラインもAI利用者にログの定期的な確認を求めています4)。AI製品で脆弱性が見つかると、ベンダーが修正や設定変更を案内します。セキュリティ情報を追い、案内に従って対応します。
7. 利用者に「AIの回答をうのみにしない」ことを伝える
AIの回答や提案に、身に覚えのないリンク、普段と違う依頼、急な操作の指示が含まれていたら手を止める——という基本を、社内ルールと研修で伝えます。生成AIの社内ガイドラインの作り方
導入済み・導入予定のAIで確認すること
- そのAIは、社内のどのデータ(メール、ファイル、チャット、顧客情報)を読めるか
- 外部のWebページ、受信メール、取引先からのファイルを読み込むか
- AIが自動で実行できる操作は何か。人の承認を挟めるか
- 管理者が機能や接続先を制限できるか
- 入力・出力・操作の記録を管理者が確認できるか
- ベンダーは、プロンプトインジェクションへの対策と、脆弱性が見つかったときの連絡方法を公表しているか
参考:AIエージェントの場合
作業を自動で進めるAIエージェントでは、1回の回答が書き換えられるだけでなく、目標そのものや一連の行動が乗っ取られるおそれがあります。OWASP はAIエージェント向けのリスク一覧の最初の項目に「目標の乗っ取り(Agent Goal Hijack)」を挙げ、自然言語の入力をすべて信頼しないものとして扱う、ツールの権限を最小にする、影響の大きい操作は人が承認する、といった対策を示しています8。なお、総務省の技術的対策のガイドラインは、AIエージェントを対象外としています1。
実際に起きた事例
事例集を見る-
社内Wiki「GROWI」のAIアシスタント機能のAPIに権限チェック欠如の脆弱性、他の利用者のスレッドやメッセージを閲覧・改ざんできるおそれ(JVN#46373837)
JVNによると、株式会社GROWIが提供する社内Wiki「GROWI」のv7.4.5およびそれ以前に、AIアシスタント機能のスレッド・メッセージのAPI(JVNの表題では「OpenAIスレッド・メッセージ API」)の権限チェック欠如の脆弱性(CWE-862、CVE-2026-25083)があった。共有AIアシスタントの識別子を知っているログイン済みの利用者が、他の利用者のAIアシスタントのスレッドやメッセージを閲覧したり改ざんしたりできる可能性がある。開発者は、各APIでスレッドの所有者を確かめていなかったと説明している。v7.4.6で修正された。
-
GitHub Copilot Chatで、PRに隠した指示により非公開リポジトリのコードや秘密情報を引き出せる脆弱性「CamoLeak」(Legit Security報告)
Legit Securityの研究者は、プルリクエストの説明文に見えないコメントで指示を隠しておくと、被害者がそのPRについてCopilot Chatに質問したときに被害者の権限で指示が実行され、GitHub自身の画像プロキシ(Camo)を経由して非公開リポジトリのソースコードやシークレットを外部に送らせられることを示した。深刻度はCVSS 9.6とされた。GitHubはCopilot Chatでの画像表示を無効化して対処した。
-
Salesforce Agentforceに、問い合わせフォーム経由の間接プロンプトインジェクションでCRMデータを外部送信させ得る脆弱性「ForcedLeak」(Noma Security報告)
Noma Securityは、攻撃者がWeb-to-Leadフォームに隠した指示を送っておくと、社員が後でそのリードについてAgentforceに尋ねたときに指示が実行され、CRMデータを外部に送らせられる脆弱性チェーンを公表した。外部送信には、CSPの許可リストに残っていた期限切れドメインを使った。深刻度はCVSS 9.4とされた。
-
ChatGPTのDeep Researchエージェントに、メール1通でGmailの情報をOpenAI側から外部送信させ得る脆弱性「ShadowLeak」(Radware報告)
Radwareは、ChatGPTのDeep ResearchエージェントをGmailとWeb閲覧に接続している場合、攻撃者がHTMLに見えない指示を仕込んだメールを1通送るだけで、利用者が何もしなくてもエージェントが受信箱の個人情報などを攻撃者のサーバーに送ってしまう脆弱性を公表した。送信はOpenAIのクラウド側から行われるため、利用者の組織側では検知が難しいとしている。
-
Microsoft 365 Copilotに、メールを受け取るだけで社内データを外部送信させ得る脆弱性「EchoLeak」(CVE-2025-32711)
Aim Security(Aim Labs)は、攻撃者がメールを送るだけで、利用者が何もしなくてもMicrosoft 365 Copilotが参照できる社内データを外部へ送らせる攻撃チェーン『EchoLeak』を見つけ、Microsoftに報告した。Microsoftは『M365 CopilotにおけるAIコマンドインジェクション』としてCVE-2025-32711を公表した。
-
Slack AIに間接プロンプトインジェクションの問題、参加していない非公開チャンネルのデータを引き出せる可能性(PromptArmor報告)
PromptArmorは、同じワークスペースにいる攻撃者が自分だけの公開チャンネルに悪意ある指示を書いておくと、被害者がSlack AIに質問した際にその指示が取り込まれ、被害者の非公開チャンネルにあるAPIキーなどをURLに含めたリンクを表示させられると報告した。Slackは、非常に限定的な条件下で同じワークスペースの攻撃者がフィッシングによりデータを取得できる問題だったとして、2024年8月20日にパッチを適用したと公表した。
この記事の根拠にした資料
- 総務省「AIのセキュリティ確保のための技術的対策に係るガイドライン(令和8年3月)」
- OWASP GenAI Security Project「LLM01:2025 Prompt Injection(OWASP Top 10 for LLM Applications 2025)」
- 総務省・経済産業省「AI事業者ガイドライン(第1.2版)本編」
- 総務省・経済産業省「AI事業者ガイドライン(第1.2版)別添」
- 独立行政法人情報処理推進機構(IPA)「情報セキュリティ10大脅威 2026 解説書[組織編]」
- NIST National Vulnerability Database「CVE-2025-32711(Microsoft 365 Copilot の情報漏えいの脆弱性)」
- IPA・AIセーフティ・インスティテュート「AI利用者のためのセキュリティ豆知識」
- OWASP GenAI Security Project「OWASP Top 10 for Agentic Applications for 2026」