プロンプト
インジェクションとは、サイバーセキュリティ分野における
脆弱性攻撃の一種であり、特に
大規模言語モデル(LLM)などの機械学習モデルにおいて意図した通りに機能しない動作を引き起こそうとする攻撃手法です。この攻撃は、ユーザーによる入力と開発者が設定したプロンプトとの区別がつかないモデルの特性を利用しています。結果として、攻撃者はこれらのモデルの動作に干渉し、セキュリティ対策を迂回することが可能になります。
大規模言語モデルは、信頼できる指示に従うよう設計されていますが、巧妙に構成された入力によって、不正確な応答を生成するように促されることがあります。特に、Webブラウジングやファイルのアップロード機能を含むモデルでは、ユーザーが直接提供したコンテンツとそうでないものを区別する必要があるため、攻撃のリスクが高まります。このリスクの一例が、攻撃用のプロンプトが
ウェブサイトのコンテンツに埋め込まれ、それが間接的にモデルの入力として解釈される場合です。
Open Worldwide Application Security Project(OWASP)によると、プロンプト
インジェクションは、2025年版 OWASP Top 10 for LLM Applications において最大のセキュリティリスクに分類されており、敵対的な入力を通じてLLMを制御できる
脆弱性として認識されています。これにより、情報漏洩やデータの誤操作といった問題が引き起こされる可能性があります。
歴史
プロンプト
インジェクションは、2022年にその概念が初めて指摘され、最初に「コマンド
インジェクション」として
OpenAIに報告されました。その後、同年にはNCC Groupがこの脅威をAIおよび機械学習システムに対する新しい
脆弱性として特定しました。「プロンプト
インジェクション」という名称は2022年9月にサイモン・ウィルソンによって提唱され、システム指示とユーザー入力の区別がつかないことを悪用するものとして位置づけられました。これに伴い、いくつかの注入形式—直接的なものと間接的なもの—が識別されました。
これは、ユーザーによる入力が開発者の指示と混同され、モデルが意図しない応答を生成する事例を指します。多くの場合、ユーザーはこの攻撃の意図を持たないこともありますが、システムに影響を与える結果となることがあります。
こちらは、プロンプトが
電子メールや文書などの外部ソースに含まれている場合に発生します。AIがこれらの指示を開発者またはユーザーからのものと誤解することがあります。このような攻撃は、意図的に仕組まれたものもあれば、意図せずに結果を操作するために使われることもあります。
プロンプト
インジェクションが引き起こすリスクには、情報漏洩、データの誤操作、さらにはフィッシング詐欺の様な悪質な行為が含まれます。特にユーザーに影響を与える事例としては、悪意のある
ウェブサイトに隠されたテキストや透明な文字が用いられ、AIによる評価を変更されることがあります。このような状況は、ユーザーが意図しなくても引き起こされるため、非常に危険です。
対策と今後の展望
プロンプト
インジェクションの脅威に対応するため、さまざまな戦略が提案されています。これには、入力と出力のフィルタリング、プロンプトの評価、ユーザーからのフィードバックを用いた強化学習、さらにはユーザー入力とシステムの指示を明確に区別するためのプロンプトエンジニアリングが含まれます。
また、セキュリティガードレールの導入やデータハイジーンの強化も対策の一環です。これにより、悪意のあるコンテンツによる影響を早期に発見し、防ぐための仕組みを構築することが求められています。しかし、これらの対策が完全にリスクを排除するわけではなく、依然としてプロンプト
インジェクションに対する注意が必要です。特に、AI技術の進化に伴い、新たな脅威が姿を表す可能性があるため、継続的な研究と対策の強化が必須です。
まとめ
プロンプト
インジェクションは、LLMを利用したアプリケーションにおける重要なセキュリティリスクです。その特性を理解し、適切な対策を講じることで、ユーザーや企業の情報を守るための対策を講じることが不可欠です。セキュリティ教育を進めることで、トレーニングやフィッシングなどの新たなリスクに対する警戒心を高める必要があります。