- Simon Willisonが公開した動画、スライド、台本
- Prompt Injection = 「AIモデルを基盤に構築されたアプリケーションに対する攻撃」。「AIモデルそのものへの攻撃ではない」
- 翻訳インジェクションの例や、Edge Sidebarで動作するBingを攻撃するページなどのデモ
- 自分のAIアシスタントが他人の命令を聞いてしまったら?(例として、パスワード再設定メールをどこかへ転送しろというプロンプトを説明)
- これに対する解決策としてPrompt beggingのようなものもあるが、あまりうまくいかない
- 私の提案は……あまり優れてはいないが、Dual Language Modelパターンである程度は解決できそう
- AIアシスタントを2つの異なるLLMで構成すること:Privileged LLM と Quarantined LLM
- Privileged LLM
- ツールにアクセス可能
- 信頼できる入力のみを処理
- Quarantined LLM に指示するが、その入力や出力は見ない
- トークンだけで処理「Summarize text $VAR1」
- 「Display $SUMMARY2 to the User」
- Quarantined LLM
- 信頼できない入力に対するタスクを処理(要約などの作業)
- 他の何にもアクセスできない
- すべての入力と出力は汚染されていると仮定し、Privileged LLM には何も直接渡さない
- プロンプトインジェクションは、理解していなければ対処方法を実装することが不可能な、非常に深刻なセキュリティ脆弱性
- 言語モデルの上に構築されたすべてのアプリケーションは、基本的にこの問題に脆弱
- プロンプトインジェクションには解決策がなく、アプリケーションを安全に開発できないなら、「No」と言わなければならないこともある
- 開発者として「それはできません」と言う人間になるのは本当に嫌だが、この場合は本当に重要だと思う
まだコメントはありません。