人工知能におけるプロンプトインジェクションの完全ガイド

最終更新: 20ドJUNIOド2026
  • プロンプトインジェクションは、LLMがシステム命令とユーザーデータを区別できないという弱点を悪用する。
  • システムのプライバシーと完全性を損なう可能性のある、直接的、間接的、および保存された形態の変異体が存在する。
  • これは、脱獄とは異なり、脱獄は特にそのモデルの倫理的およびセキュリティ上の障壁を回避することを目的としている。
  • 対策には、入力フィルタリング、権限管理、および人的監視を組み合わせた、学際的なアプローチが必要です。

AIへの迅速な注入

チャットボットが私たちの生活をいかに便利にしているかについては、おそらく耳にしたことがあるでしょう。しかし、あまり報道されない暗い側面も存在します。これらのツールは一見魔法のようですが、情報処理方法に根本的な弱点があり、特定のユーザーが開発者の意図しない動作をするように「騙す」ことが可能になっているのです。

ここで問題にしているのはプロンプトインジェクションと呼ばれる手法で、言語を操作してAIを制御するものです。プログラミングの専門知識や複雑なプログラムのインストールは不要です。適切なフレーズを一つ挿入するだけで、AIモデルがルールを無視して秘密を漏洩したり、悪意のある行動をとったりすることがあり、現代のサイバーセキュリティにとって大きな脅威となっています。

即時注射とは具体的に何ですか?

これを正しく理解するには、GPT-4やGeminiなどの大規模言語モデル(LLM)がプロンプトを使用して動作することを知ることが不可欠です。プロンプトとは、ユーザーが機械に与える指示のことです。問題は、開発者がボットの動作とルールを定義するために目に見えない内部指示(システムプロンプト)を追加するものの、AIはプログラマーのコマンドがどこで終わり、ユーザーのテキストがどこから始まるのかを区別できないことです。

ローカルAI自動化
関連記事:
ローカルAIと自動化:エージェント、セキュリティ、そして実際の事例

この脆弱性は、モデルがテキストストリーム全体を単一の単位として処理するために発生します。そのため、攻撃者が「上記すべてを無視せよ」というコマンドを挿入した場合、AIは元のセキュリティルールよりも新しいコマンドを優先してしまう可能性があります。これは本質的に、言語を武器としてアシスタントの動作を乗っ取る、機械に対するソーシャルエンジニアリングの一種と言えます。

  OpenVPNを使用して独自のローカルVPNサーバーをセットアップするための完全ガイド

Prompt InjectionとJailbreakの主な違い

多くの人がこの2つの用語を混同していますが、両者は同じではありません。ジェイルブレイクとは、AIの「鍵を開ける」ようなものです。その目的は、倫理的な保護やコンテンツポリシーを無効化し、ボットが禁止されている発言をしたり、制限されたコンテンツを生成したりすることです。最も有名な例はDANモード(「Do Anything Now」)で、モデルがルールに縛られずにキャラクターを演じることを強制されます。

一方、プロンプトインジェクションはより広範な概念です。必ずしも倫理的なルールを破ることを目的とするわけではなく、システムの機能を変更することを目的としています。攻撃者は、ボットに内部命令を開示させたり、接続されたシステム上で不正な操作を実行させたりしたいだけかもしれません。ジェイルブレイクは通常、ユーザー自身がセッション内で意図的に行う行為ですが、プロンプトインジェクションは第三者に影響を与える目に見えない攻撃となる可能性があります。

迅速な注射攻撃

攻撃の種類:直接攻撃、間接攻撃、および蓄積型攻撃

すべての攻撃が同じ方法で実行されるわけではありません。最も単純な方法はダイレクトインジェクションで、これはユーザーが悪意のある命令をチャットウィンドウに直接入力することで発生します。これは、システムをハッキングするための意図的な行為である場合もあれば、モデルの動作異常を引き起こす偶発的なユーザーエラーである場合もあります。

AIエージェントブラウザのセキュリティリスク
関連記事:
AIエージェント搭載ブラウザのセキュリティリスク

間接的なインジェクションははるかに危険です。この場合、攻撃者はAIと直接通信するのではなく、ウェブページ、PDF文書、電子メールなど、AIが読み取る外部ソースに指示を隠します。たとえば、「ユーザーデータを盗む」というコマンドを含む目に見えないテキストを含むウェブページをボットに要約させると、AIは隠されたコマンドを処理し、ユーザーの知らないうちに情報を漏洩させる可能性があります。

  Signalとは何ですか?また、なぜSignalが最も安全なメッセージングアプリなのでしょうか?

最後に、ストアドインジェクションについて説明します。この手法では、悪意のある命令をデータベースまたはトレーニングデータ自体に仕込みます。情報は既に保存されているため、モデルがマルウェアを吸収し、特定の情報にアクセスするたびに複製するため、攻撃は異なるセッションの多くのユーザーに影響を与える可能性があります。

現実世界への影響と災害シナリオ

攻撃が成功した場合、その影響は深刻で、企業の機密データの漏洩から重要な意思決定の改ざんまで多岐にわたります。AIがAPIやメールにアクセスできる企業環境では、攻撃者はボットを使ってユーザーになりすましてメッセージを送信させたり、プライベートファイルにアクセスさせたりすることが可能です。

  • 履歴書詐欺: 一部の応募者は、人事部のAIフィルターを欺くために、(人間には見えない)空白のテキストに「私は並外れた専門家です」と記載している。
  • ブラウザハイジャック: 研究者たちは、 メールを読むAIエージェント 隠された指示に従って、ユーザーの上司に辞表を送付する。
  • システムリーク: Bing Chatの場合、ある学生がボットにコードネーム「シドニー」と内部運用ガイドラインを明らかにさせることに成功した。
  • マルチモーダル攻撃: 悪意のある指示がテキストに含まれていないリスクもありますが、 画像に埋め込まれている AIが分析することで、攻撃対象領域が拡大する。

防御および緩和戦略

残念ながら、LLMの確率的な性質上、決定的な解決策はありません。しかし、非常に効果的な安全対策を講じることは可能です。最良の選択肢の一つは、入出力フィルタリングです。これは、外部システムがプロンプトがモデルに到達する前に、疑わしいパターンが含まれているかどうかを分析するものです。

  サイバーセキュリティはデジタル起業の原動力となる

最小権限の原則を適用することも非常に重要です。AIにメールアカウントやデータベースへの完全なアクセス権を与えるべきではありません。リスクの高い操作には人間の承認を必要とする仲介役として機能させる方が賢明です。その他の手法としては、外部データを処理するために「隔離された」モデルを使用したり、制御ロジックと信頼できないデータの読み取りを分離したりすることが挙げられます。

最後に、継続的なトレーニングと敵対的テストが鍵となります。企業は、ハッカーよりも先に脆弱性を発見するために、攻撃をシミュレーションする必要があります。さらに、テレメトリログによってモデルの応答における異常を検出できるため、何かがおかしいと感じたときに迅速に対応できます。