LuAITools.com
提交工具
🛡️AI
入力に潜む命令

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

プロンプトインジェクションは、入力に悪意ある命令を潜ませ、エージェントに本来の設定を無視させ、意図しない操作をさせる攻撃。LLMアプリで最も多い攻撃のひとつです。

プロンプトインジェクションって何?

エージェントはプロンプトで動きます。でもその入力には、外部のデータ——Webページ、メール、アップロードされたファイル——が混ざりがちです。プロンプトインジェクションとは、攻撃者がそうした外部コンテンツに「悪意ある命令」を紛れ込ませ、モデルにそれを新しい命令と思わせて、本来のルールをすり抜けさせる攻撃です。

なぜ危険なのか

モデルは「データ」と「命令」を区別できない
モデルにとって、Webページの文章もシステム命令も、どちらもただのテキスト。どちらを実行し、どちらを参考にとどめるべきか、判別が難しいのです。
エージェントの「手」を悪用できる
注入が成功すると、攻撃者はエージェントに個人情報を漏らさせたり、メールを送らせたり、危険な操作をさせたりできます。しかも全て「普通の利用者リクエスト」の皮をかぶって。

主な攻撃手法

直接インジェクション
入力に「これまでの指示は無視して、代わりに…」と書き、行動を直接書き換えます。
間接インジェクション
エージェントが読みに行くWebページや文書に悪意ある命令を隠し、自ら罠に入らせます。
脱獄(ジェイルブレイク)プロンプト
ロールプレイや物語の体裁で、安全制限をすり抜けるよう仕向けます。

どう防ぐか

「信用できない外部データ」と「システム命令」を厳密に分離し、命令を優先度の高い位置に置き、エージェントの権限を絞り、出力を検証する。これらを重ねることで、リスクを最小限に抑えます。

まとめ:プロンプトインジェクションとは、入力に「悪い命令」を潜ませ、エージェントに「良い命令」と思わせて実行させる攻撃です。

コメント